Object-Oriented Programming is Bad (2016) [video]
11–20 of 133 posts
Re: Object-Oriented Programming is Bad (2016) [video]
#12s/bad/unfashionable
Except it's not unfashionable. It's used by millions of programmers who just want to get stuff done. It's used by thousands of companies who don't really care how the native instructions are eventually generated. It's used by individuals and teams, application developers and library authors. This premise of this video is flawed from the beginning and the whole thing is basically a gigantic straw man.
Re: Object-Oriented Programming is Bad (2016) [video]
#13Here's the medium post from the same author that goes with the video: https://medium.com/@brianwill/object-oriented-programming-a-...
This is someone who is confronting basic limits of representation and information flow and blaming OOP. There is no one best way to organize code just like there is no one best sentence to describe a rose.
Before that it was the search for the One Way. OOP and functional programming were probably the two biggest opposing schools during that era, but now the trend is languages that easily allow both plus plain vanilla procedural programming. It's the programmer's job to pick a paradigm for the problem being solved.
Re: Object-Oriented Programming is Bad (2016) [video]
#14Re: Object-Oriented Programming is Bad (2016) [video]
#15Re: Object-Oriented Programming is Bad (2016) [video]
#16Earlier quoted context omitted.
This is someone who is confronting basic limits of representation and information flow and blaming OOP. There is no one best way to organize code just like there is no one best sentence to describe a rose.
"There is no one best way" summarizes what I think is a major unheralded realization in software engineering in the past 10 years. Before that it was the search for the One Way. OOP and functional programming were probably the two biggest opposing schools during that era, but now the trend is languages that easily allow both plus plain vanilla procedural programming. It's the programmer's job to pick a paradigm for t…
~ Fred Brooks, No Silver Bullet (1986)
Re: Object-Oriented Programming is Bad (2016) [video]
#17Earlier quoted context omitted.
This is someone who is confronting basic limits of representation and information flow and blaming OOP. There is no one best way to organize code just like there is no one best sentence to describe a rose.
"There is no one best way" summarizes what I think is a major unheralded realization in software engineering in the past 10 years. Before that it was the search for the One Way. OOP and functional programming were probably the two biggest opposing schools during that era, but now the trend is languages that easily allow both plus plain vanilla procedural programming. It's the programmer's job to pick a paradigm for t…
Re: Object-Oriented Programming is Bad (2016) [video]
#18The reason of the popularity of OOP is way longer than java, Xerox invented the graphical desktop and ALSO OOP.
When Steve Jobs was ousted from Apple he created NEXT because he believed OOP was the next big thing. It was, and it became the foundation of MacOS X. Microsoft copied Steve Jobs in Windows with MFC. Java copied all of them.
In the words of Steve Jobs, developing in OOP is not faster than not using it. The big difference was once it had been created, it can be reused easily. That was essential for complex systems. It became obvious for companies.
There is this religion today of functional programing, people come to me and say, look how great this is, without state parallel programming is so easy, now you can use 32 processors at the same time. Great!!, until we measure performance and the thing goes 50 times slower. So now you can use 32 processors for what used to take one.
Don't get me wrong, we use functional programming when it is the best tool for the job(it removes lots of bugs), but it is not panacea.
Re: Object-Oriented Programming is Bad (2016) [video]
#19Re: Object-Oriented Programming is Bad (2016) [video]
#20It seems the author has not learned how to use OOP appropriately. His main argument can be summed up as “it’s hard to name things and hard to compose things” and that seems to apply to all programming.
When he talks about the "kingdom of nouns" he's not complaining that the problem with "Manager" classes is that they're hard to name. Instead, the argument is that these manager classes are hard to name because you've reached a point in encapsulation where the association between behavior and state in inherently unclear and overly abstracted.
I think the author would agree that all programing deals with the difficult problem of composition, however, the argument in this case is that OOP introduces unrealistic constraints on composition. The argument in this video is that encapsulation and the single responsibility principle requires you to choose between a difficult to maintain tree-based object hierarchy, or to abandon encapsulation, and that both of these are sub-optimal choices.
Finally, I think the author would agree that he "has not learned how to use OOP appropriately" but would go one step further and say that "it's impossible to 'use OOP appropriately.'"