Write merits and demerits of Object Oriented Methodology.


Q.) Write merits and demerits of Object Oriented Methodology.

Subject: Object Oriented Programming and Methodology

Merits of Object Oriented Methodology:

  1. Modularity: Objects are independent, self-contained entities that can be easily combined to form larger, more complex systems. This makes it easier to maintain and update the system, as changes to an object will not affect other parts of the system.

  2. Reusability: Objects can be reused in multiple programs, reducing the time and effort required to develop new applications. This can significantly improve productivity and save development costs.

  3. Encapsulation: Objects encapsulate data and functionality, hiding the implementation details from the rest of the program. This makes it easier to change the implementation of an object without affecting the rest of the program.

  4. Extensibility: Objects can be easily extended by adding new methods or attributes. This makes it easy to add new features and functionality to existing systems.

  5. Maintainability: Object-oriented programs are generally easier to maintain than procedural programs. This is because the code is more modular and organized, and changes to an object will not affect other parts of the program.

  6. Security: Objects can be used to implement security measures, such as access control and data validation. This can help to protect the system from unauthorized access and data breaches.

Demerits of Object Oriented Methodology:

  1. Complexity: Object-oriented programs can be more complex than procedural programs, making them more difficult to understand and maintain. This complexity can also lead to increased development time and costs.

  2. Performance: Object-oriented programs can sometimes be less efficient than procedural programs, due to the overhead of creating and maintaining objects. This can be a significant issue for performance-critical applications.

  3. Steep Learning Curve: Object-oriented programming can have a steep learning curve, especially for programmers who are new to the paradigm. This can make it difficult for organizations to find qualified object-oriented programmers.

  4. Memory Overhead: Object-oriented programs typically have a higher memory overhead than procedural programs. This is because objects store both data and methods, which can take up more memory than the data alone.

  5. Increased Development Time: Object-oriented programs can take longer to develop than procedural programs, due to the need to design and implement classes and objects. This can increase the cost of development and delay the time to market.