Monday, May 14, 2007

Life with OOPS!

' Object Orientation' or 'Object Oriented Programming [OOPS]' is a paradigm of computer programming.Its also a term that is used mostly by all but without having adequate knowledge.I would like to tell how fascinating it was for me, share my thoughts about it. And this can not be an authentic reference place,obviously.Be skeptic! If your intention is to learn OOPS from scratch, this may not be the right place.

I believe OOPS is rather a philosophy-the way human cognition perceives this world.And this knowledge is applied in programming to make things easier (to reduce complexity..they say!).A programming language that provides necessary construct so that these basic guidelines of OOPS can be implemented is said to be an Object Oriented Programming Language.

Nowadays, Am I losing that spirit about about OOPS which I had nurtured for years!?Might be... because the much business oriented Indian IT MNC culture has taken out much of my spirit were everything is about Profit and Loss, Resource Allocation ... contrary to the glossy ads they give in Times Ascend about Quality and Innovation.
Abstraction helps to interact with something without bothering into it's details.Abstraction defines 'looking into the essential characteristics'.Abstraction depends on who perceives-it is different for different observers.

"An abstraction denotes the essential characteristics of an object that distinguish it from all other kinds of object and thus provide crisply defined conceptual boundaries, relative to the perspective of the viewer."

Above is a precise definition given by Booch.

How I felt was...Abstraction is about our perception of something -guided by our own purpose or need.I remember somebody explained it as follows

To an artist once palm is all about aesthetics;he is concerned about keeping it's proportions in painting.But the same palm for an orthopedician who wants to have a surgery on it is perceived differently-that he sees bones and joints.

Also Abstraction is something 'God' has filled in universe(or in human mind?) that made things a lot easier-ie, irrespective of the internal complexities u can accomplish a particular functionality.It is like a driver has to apply brakes(push) to stop an ambassador car which is the same he has to do in Mercedes Benz or Ferrari to stop it,irrespective of the different breaking mechanisms each of these possesses.Abstraction comes in the form of a pedal -'A pedal Push'! Same with steering! u act always similarly having little concern over whether it is a power steering or not!

U have to turn on the Switch labelled 'LIGHTS' in the conference room.last week it was an incandescent it has been replaced with a Fluorescent lamp but you don't bother about these-ur finger operates in the same way.Here U see abstraction.

Abstraction is can c it everywhere....I never cared abt whether my company buildings are painted in blue or yellow!It was irrelevant (to me).But later I hav seen the painter fired for the wrong mix of colors while painting them(much relevant for him).I just cared compensation(?) and technology....I just looked into the essentials.....!

Its getting pretty late.Time for a coffee& Cigarette. This week, I will add more here..... Interfaces!Encapsulation...!

No comments: