Procedure oriented programming
Object Oriented programming
Emphasis is on doing things (algorithms)
Large Programs are divided into smaller programs known as functions.
Most of the functions share global data.
Data move openly around the system from function to function.
Functions transform data from one form to another.
Employs top down approach in program design.
Emphasis is on data rather than on procedure
Programs are divided into objects
Data structures are designed in such a way that it characterizes the object
Functions that operate on data are ties together in a data structure called class
Data is hidden and cannot be accesses by external functions.
Objects may communicate to each other with the help of functions.
New data and functions can be easily added whenever necessary
Follows bottom-up approach.