As far as I know, object oriented programming originally means that you organize all the concepts of your program into objects and then define all the logic flow as messages between those objects. I think that in order to understand the original intent, you have to learn Smalltalk.