Notes – Difference Between Procedural Oriented and Object Oriented Programming in C++
Understanding these three programming approaches is important to grasp how C++ evolved and how it works.
1. Procedural Oriented Programming (POP)
This is the traditional approach to programming.
- Follows a step-by-step structure.
- Programs are divided into functions.
- Focus is on procedure (what to do).
- Data is shared among functions.
- Less secure as data can be accessed globally.
Example Languages: C, Pascal
2. Object Oriented Programming (OOP)
This is the modern approach used in C++, Java, Python (partially), etc.
- Program is divided into objects (real-world entities).
- Focus is on data (how to protect and use it).
- Promotes encapsulation, inheritance, and polymorphism.
- Better security: data and functions are tied together in a class.
Example Languages: C++, Java, Python (partially)
3. Object Based Programming (OBP)
- Similar to OOP but does not support inheritance or polymorphism.
- Supports object and class, but not full OOP features.
- Useful for simpler applications.
Example Language: JavaScript (traditionally), VBScript
Tabular Comparison
| Feature | Procedural (POP) | Object Oriented (OOP) | Object Based (OBP) |
|---|---|---|---|
| Divided Into | Functions | Objects/Classes | Objects/Classes |
| Focus | Procedure | Data | Data |
| Data Security | Low | High | Moderate |
| Inheritance Support | No | Yes | No |
| Polymorphism | No | Yes | No |
| Reusability | Low | High | Medium |
| Real-life Modeling | Difficult | Easy | Partial |
| Example Language | C | C++, Java | JavaScript |
