5 ms·
I wrote about this last summer: http://michaelochurch.wordpress.com/2012/08/15/what-is-spaghetti-code/ http://michaelochurch.wordpress.com/2012/08/15/what-is-sp
by michaelochurch 14y ago
I wrote about this last summer: http://michaelochurch.wordpress.com/2012/08/15/what-is-spaghetti-code/ http://michaelochurch.wordpress.com/2012/08/15/what-is-spagh...
Inheritance (typically assumed to be part of OO, but not a requirement) is a big part of it. It gets nasty pretty quickly. Inheritance is the 21st-century goto, although it shares features with the even wonkier "comefrom" of INTERCAL.
Spaghetti code isn't just "bad code" but a specific kind of bad code where understanding a piece in isolation requires pinging about an ungodly number of places. There are a lot of causes of that, but usually it's poor software management and bad development practices.
- rhizome 14y ago"Inheritance breaks encapsulation," the elders said, and as with all extremes, they each have their problems. Language is a lossy codec for math/logic/thoughts, computer languages no less so.
- timr 14y agoThe "elders" never said that. They invented inheritance because there was a need for it. Inheritance is a great way to maintain encapsulation in the face of a messy world. Unchecked composition quickly gets you to a world where everything has to be public anyway.
- rhizome 14y agoIt's just a figure of speech.
- ank286 14y agoThis is a case of coherence vs coupling, which is lost by OO developers. Everything is so tightly coupled that more spaghetti code is written up to not break the coupling, making the code more incoherent overall.
- brudgers 14y agoMy understanding is that it originates with plugboards. See the third image in this recent article: http://www.pcworld.com/article/249951/if_it_aint_broke_dont_fix_it_ancient_computers_in_use_today.html http://www.pcworld.com/article/249951/if_it_aint_broke_dont_...