I often find people struggling with the notion of object oriented programming. I am just trying to give my understanding in as simple way as it is.
First thing is that object oriented concepts are nothing but the real world concepts. Everything you see can be classified as objects, which belong to classes. So, one can easily say elephants are objects of class mammals.
The key features in my opinion in the decision for object oriented approach are
- Code Reusability
- Development time and Cost
- Ease in Extending
Though we have lots of other key features, I just tried to put some which I felt are really important in making the decision. Please let me know your comments below.