Advantages and Disadvantages of OOP | C++ Programming

Advantages and Disadvantages of OOP

Advantages of OOPs

Object oriented programming contributes greater programmer productivity, better quality of software and lesser maintenance cost. 

The main advantages are:

  1. Making the use of inheritance, redundant code is eliminated, and the existing class is extended.
  2. Through data hiding, programmer can build secure programs that cannot be invaded by code in other parts of the program.
  3. It is possible to have multiple instances of an object to co-exist without any interference.
  4. System can be easily upgraded from small to large systems.
  5. Software complexity can be easily managed.
  6. Message passing technique for communication between objects makes the interface description with external system much simpler.
  7. Aids trapping in an existing pattern of human thought into programming.
  8. Code reusability is much easier than conventional programming languages.

Disadvantages of OOPs

  1. Compiler and runtime overhead. Object oriented program required greater processing overhead – demands more resources.
  2. An object’s natural environment is in RAM as a dynamic entity but traditional data storage in files or databases.
  3. Re-orientation of software developer to object-oriented thinking.
  4. Requires the mastery in software engineering and programming methodology.
  5. Benefits only in long run while managing large software projects.
  6. The message passing between many objects in a complex application can be difficult to trace & debug.