Procedural Programming vs Object-Oriented Programming
Below are some of the differences between procedural and object-
oriented programming:
Procedural Oriented Programming Object-Oriented Programming
In procedural programming, the program In object-oriented programming, the
is divided into small parts program is divided into small parts
called functions. called objects.
Procedural programming follows a top- Object-oriented programming follows
down approach. a bottom-up approach.
Object-oriented programming has access
There is no access specifier in procedural
specifiers like private, public, protected,
programming.
etc.
Adding new data and functions is not
Adding new data and function is easy.
easy.
Procedural programming does not have
Object-oriented programming provides
any proper way of hiding data so it is less
data hiding so it is more secure.
secure.
In procedural programming, overloading Overloading is possible in object-
is not possible. oriented programming.
In object-oriented programming, the
In procedural programming, there is no
concept of data hiding and inheritance is
concept of data hiding and inheritance.
used.
In procedural programming, the function In object-oriented programming, data is
is more important than the data. more important than function.
Procedural programming is based on Object-oriented programming is based
the unreal world. on the real world.
Procedural programming is used for Object-oriented programming is used for
designing medium-sized programs. designing large and complex programs.
Procedural programming uses the concept Object-oriented programming uses the
of procedure abstraction. concept of data abstraction.
Code reusability absent in procedural Code reusability present in object-
programming, oriented programming.
Examples: C, FORTRAN, Pascal, Basic,
Examples: C++, Java, Python, C#, etc.
etc.