[thelist] Object Oriented Programming
kipper_timmins at live.co.uk
Mon May 30 17:17:01 CDT 2011
I was wondering if any of you could offer your opinion with regards to what Object Oriented Programming actually is. Most developers will know how to use it, however it seems defining it is full of a lot of different opinions.
My current take on the foundations of OO (before we move further into the topic) is the following:
4 key pillars/concepts
Encapsulation : The ability to logically group functionality together into a meaningful concept (object) without defining access rights to the information.
Abstraction : The ability to remove irrelevant information for the task at hand. i.e. a bank not holding records of your favourite colour on your account records because the information has no purpose there.
Inheritance : The ability to generalise concepts to improve reusability.
Polymorphism : Early binding – Same method name with different argument signature (usually within the same class). Late binding – Same method name, same argument signature, different functionality (between inherited classes)
I would really appreciate any of you sharing your thoughts on this.
More information about the thelist