3 ms·
> Don't be a dick. Don't worry, I won't. > iterative code I'm not really sure what that is. But I notice OO is unique in that "you don't understand it" is al
by tree_of_item 8y ago
> Don't be a dick.
Don't worry, I won't.
> iterative code
I'm not really sure what that is. But I notice OO is unique in that "you don't understand it" is always the main defense. The trouble is that, when people can't even agree on a definition of OO, it is genuinely not clear that there is anything to understand. There is always some OO best practice that is ill defined and contradicts the advice yesterday. No one from OO land seems to enjoy math very much so you don't get precise definitions, you get "patterns" and "I know it when I see it".
- matthewmacleod 8y agoiterative code That was a typo of "imperative", sorry. But I notice OO is unique in that "you don't understand it" is always the main defense It's really, really not. This kind of argument comes up in a number of places, and I think there's a commonality – it tends to appear where systems are flexible, open-ended, and easy to start using, such that people tend to pick them up without thinking about how and why they will be using the tool. You see the same thing with "agile" for example. OO isn't complicated. At the most basic level, it's just taking a data structure that you might use in any other programming approach, and attaching functions to it as methods. Go is object-oriented in this sense, for example. Problems arise when bad implementations of OO concepts appear – but pointing at say excessively-enterprise Java and saying "this is evidence that OO is bad" doesn't really hold any water.