POP |
OOP |
Emphasis is given more to procedures (functions) |
Emphasis is given more to data in OOP |
The programming task is divided into a collection of data structures and methods or functions. |
The programming task is divided into objects (consisting of data members and associated member functions) |
Procedures are being separated from data being manipulated |
Procedures are not separated from data, instead, procedures and data are combined together and put into a class |
A piece of code uses the data to perform the specific task |
The data uses the piece of code to perform the specific task |
Data is moved freely from one function to another function using function parameters. |
Data is hidden (using private and protected access specifiers) and can be accessed only by member functions, not by an external function. |
Data is not secure in POP |
Data is secure OOP due to the use of access specifiers |
POP follows the top-down approach to solve the problem |
OOP follows the bottom-up approach to solve the problem |
As the size of the program increases the debugging becomes difficult |
Irrespective of the size of the code the debugging is simple and easier in OOP. |