Sunday, August 24, 2014


One of the very powerful features that Object orientation provides is Polymorphism and this means taking many forms. OO programmers realize this feature either at runtime or at compile time. We have all been thought that OO had its genesis from real world scenarios. For ex: Classes from Blueprints, Objects from tangible things and etc. While classroom sessions had been good to understand the theory from the most experienced faculty in Computer science, currently I'm going through a phase of taking OO lessons from my 1.8 year old daughter, Shriya :)

Imagine a word, Geeeee. Shriya had been taught this word stands for water. She has been taught that this word stands for Swing [Let us go and play Geee in the park], for a see - saw, for a park, for diluted juice, for medicine and etc. All these have been taught by not one, but multiple people at different phases of her life

While we were travelling the previous week, Shriya suddenly started to shout Geee. My wife gave her water, which she promptly turned down but only later we realized that our compilers [brain] were not able to interpret the scenario properly. Geee was being referred to as a park :) and she wanted to play swing. How about this for Abstraction [for not able to understand anything] and Runtime polymorphism [giving us an hard time to understand the things]?