Procedural Programming can be defined as a programming model which is derived from structured programming, based upon the concept of calling procedure. Procedures, also known as routines, subroutines or functions, simply consist of a series of computational steps to be carried out. During a program’s execution, any given procedure might be called at any point, including by other procedures or itself.
Languages used in Procedural Programming:
FORTRAN, ALGOL, COBOL, BASIC, Pascal and C.
Object Oriented Programming:
Object oriented programming can be defined as a programming model which is based upon the concept of objects. Objects contain data in the form of attributes and code in the form of methods. In object oriented programming, computer programs are designed using the concept of objects that interact with real world. Object oriented programming languages are various but the most popular ones are class-based, meaning that objects are instances of classes, which also determine their types.
Languages used in Object Oriented Programming:
Difference between Procedural Programming and Object Oriented Programming:
|Procedural Oriented Programming||Object Oriented Programming|
|In procedural programming, program is divided into small parts called functions.||In object oriented programming, program is divided into small parts called objects.|
|Procedural programming follows top down approach.||Object oriented programming follows bottom up approach.|
|There is no access specifier in procedural programming.||Object oriented programming have access specifiers like private, public, protected etc.|
|Adding new data and function is not easy.||Adding new data and function is easy.|
|Procedural programming does not have any proper way for hiding data so it is less secure.||Object oriented programming provides data hiding so it is more secure.|
|In procedural programming, overloading is not possible.||Overloading is possible in object oriented programming.|
|In procedural programming, function is more important than data.||In object oriented programming, data is more important than function.|
|Procedural programming is based on unreal world.||Object oriented programming is based on real world.|
|Examples: C, FORTRAN, Pascal, Basic etc.||Examples: C++, Java, Python, C# etc.|
- Object-Oriented Programming in Ruby | Set 1
- Object Oriented Programming in Ruby | Set-2
- Difference between Procedural and Non-Procedural language
- OOPs | Object Oriented Design
- Characteristics of Good Object Oriented Design
- Difference between Procedural and Declarative Knowledge
- Difference between Row oriented and Column oriented data stores in DBMS
- Differences between JDK, JRE and JVM
- Differences between TCP and UDP
- Differences between POP3 and IMAP
- Differences between Bootstrap and JQuery UI
- What are the differences between HTTP, FTP, and SMTP?
- Similarities and Differences between Ruby and C++
- Differences between IPv4 and IPv6
- Differences between Testing and Debugging
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.