Object Oriented Programming: Object-Oriented ?

Object-oriented ?


In our physical world, an object is a tangible "something" upon which our senses can feel and that which we can manipulate. In software development, objects are not tangible something rather they are a models of something that can do certain things and have certain things done to them. Formally,

an object is a collection of data and associated behaviors.

What, then, is object-oriented?

Oriented simply means directed toward or an inclination toward. So when we say object oriented it means, "functionally directed towards object".

This allows us to model complex systems via a collection of objects manipulating their data and behaviors.

Highly related concepts under the same general object-oriented umbrella:

  1. Object-oriented analysis
  2. Object-oriented design
  3. Object-oriented programming

Analysis, design and programming actually are just stages of software development. Object-oriented is simply a style of software development.

Object-oriented analysis

  • the process of looking at the problem and identifying the objects and interactions between objects
    • analysis stage is all about what needs to be done
    • output of this stage is a set of requirements

Object-oriented design

  • the process of converting such requirements into an implementation specification.
    • designers must name the objects, define the behaviors, and formally specify what objects can activate specific behaviors on other objects
    • how things should be done

Object-oriented programming

  • the process of converting this perfectly defined design into a working program that does exactly what is originally request
    • at this stage, you start writing the design into a code

as usual, the real world is much murkier.





Disclaimer: this is a summary of section 1.1 from the book "Python 3 - Object Oriented Programming: Dusty Phillips", the content apart from rephrasing is identical, most of the equations are from the book and the same examples are treated. All of the equation images were screenshot from generated latex form.

  1. Python 3 - Object Oriented Programming: Dusty Phillips

Thank you for reading ...


1524729086676.png

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center