4/30/2014 12:00:00 AM in
In object oriented programming, a complex system is decomposed in accordance to the key abstractions of the problem. Rather than decomposing the problems into steps, we identify objects, which are delivered directly from the vocabulary of the problem domain.
We view the world (problem domain) as a set of autonomous agents that collaborate to perform some higher level behavious. Each object in the solution embodies its own unique behaviour and each one models some object in the real world. The object is simply a tangible entity that exhibits some well defined behaviour. Objects do things we ask them to perform what they do by sending the messages. OOP paradigm helps us to organize the inherent complexities of sofware systems.