What is Object Oriented Analysis and Design?
Martin Fowler in his book "UML distilled" says you will one day realize that you have got the Object Oriented thinking in you. And I have realized the same!
Someone who has done programming in a procedural oriented programming in college, student project or in early part of their career will tend to think in the same until the turning point moment comes. You cannot know when the turning point moments comes in your life and that exactly true, you cannot tell when you will get the OO thinking in you.
But once you start thinking in OO, you need to grow it so that you keep yourself in it as there is every chance that we may slip from it and go back to procedural oriented.
When we discuss so much about Object Oriented, we have to mention here that programming in procedural oriented is NO sin. Procedural programming has it own servings, it's own audience and satisfies the requirement of its purpose.
So what makes OO interesting?
to me, its the way how it works! the way it translates the thinking in you such that it makes you to build a software according to the requirements in a maintainable, extendable way!
That is, you will be proud person that your software will accommodate the future requirement that your client is going to give with minimal implementation, without touching the code (which means you don't have to retest those functionality which was already developed and released to the clients).
While the said things in above paragraph can be achieved in procedural programming but there you have to be extremely disciplined, careful. If not, you have to bear the pain of adding new functionality and with a greater turn around time.
OO does all these with much of ease! But again it also needs a discipline though not to the extent that procedural programming does. Poorly designed Object oriented applications can become a bigger nightmare than the equally complex procedural oriented applications.
To bring a better discipline in us in using OO, we have to grow it. How can we grow it? By discussing, By practicing.
The concepts and principles of Object Oriented programming are discussed here with examples using which OO knowledge and its Thoughts are Gained!.
C++, Java and C# are used for explaining the code. UML is used for explaining the design
Martin Fowler in his book "UML distilled" says you will one day realize that you have got the Object Oriented thinking in you. And I have realized the same!
Its a Paradigm which you will get in you without knowing that you have got it!
But once you start thinking in OO, you need to grow it so that you keep yourself in it as there is every chance that we may slip from it and go back to procedural oriented.
When we discuss so much about Object Oriented, we have to mention here that programming in procedural oriented is NO sin. Procedural programming has it own servings, it's own audience and satisfies the requirement of its purpose.
So what makes OO interesting?
to me, its the way how it works! the way it translates the thinking in you such that it makes you to build a software according to the requirements in a maintainable, extendable way!
That is, you will be proud person that your software will accommodate the future requirement that your client is going to give with minimal implementation, without touching the code (which means you don't have to retest those functionality which was already developed and released to the clients).
While the said things in above paragraph can be achieved in procedural programming but there you have to be extremely disciplined, careful. If not, you have to bear the pain of adding new functionality and with a greater turn around time.
OO does all these with much of ease! But again it also needs a discipline though not to the extent that procedural programming does. Poorly designed Object oriented applications can become a bigger nightmare than the equally complex procedural oriented applications.
To bring a better discipline in us in using OO, we have to grow it. How can we grow it? By discussing, By practicing.
The concepts and principles of Object Oriented programming are discussed here with examples using which OO knowledge and its Thoughts are Gained!.
C++, Java and C# are used for explaining the code. UML is used for explaining the design
No comments:
Post a Comment