Object Oriented Programming
From APIDesign
This is my personal take on OOP. In case you are searching for objective view, then rather see official wikipedia's explanation.
History
OOP is no longer what it used to be. Somehow the original great visions diluted and instead we have class/object/inheritance as present in Java and other OOP languages of these days. The daily experience we have with these languages is so strong, so defining that we sometimes tend to forget that the roots of OOP used to be driven by visions and not technical concepts.
I was reminded about that recently when I read Motivation for DCI at artima website. Just few quotes:
- Object oriented programming grew out as vision of the computer
- as an extension of the human mind.
- MVC's goal was to provide the illusion of a direct connection
- from the end user brain to the computer "brain"
- a large method that represented an entire algorithm was believed to
- not be a "pure" object-oriented design
- This use of inheritance crept out of the world of programming
- language into the vernacular of design