Advantages of OOP
1. Well-designed oop code EASY TO REUSE. Shared modules can be distributed as libraries which can be used in other applications.
2. INCAPSULATION. In well-designed OOP code in order to use OOP objects clients dont’t need to know how objects works internally they work with declared interfaces/contracts only.
3. MAINTAINABILITY. Well-designed code is easy to maintain it is easy to substitute one module with another without breaking functionality.
4. EASY TO WRITE LARGE APPLICATIONS.
Disadvantages of OOP
1. Performance. OOP have to deal with lots of objects in memory
2. LONG LEARNING CURVE.