Goodbye, Object Oriented Programming
Charles Scalfani
4.9K314

This debate could go on forever. I think inheritance is useful for some application domain and less for others and the same is true for OOP generally.
One of the most important lesson for a programmer I think is to learn about the good and bad practices for the language he is using. It is not sufficient to understand the syntax and the run-time library of a language. It is also important to learn the fundamental concepts like ‘information hiding’ and such. It takes a lot to make a good programmer in any language.
My first programming language was APL (around 1979). This was not a OO language and a lot of people were using APL for a great number of different applications. However, when you looked at the code, a lot of it was not idiomatic. Not good APL style. Things like using explicit loops and such. A lot of people understood the syntax and operators available but they did not understand what good APL style was. Also, you have to learn how to overcome the limitations of the language you are using.