Como cualquier paradigma existen ventajas y desventajas para la resolución de problemas. No existe un paradigma perfecto, y es una necesidad de los programadores verificar para qué situaciones son adecuados.
Ventajas
Algunas de las ventajas de la programación orientada a objetos son los siguientes:
- Los componentes se pueden reutilizar.
- Facilidad de mantenimiento y modificación de los objetos existentes.
- Una estructura modular clara se puede obtener, la cual no revelará el mecanismo detrás del diseño.
- Se proporciona un buen marco que facilita la creación de rica interfaz gráfica de usuario aplicaciones (GUI).
- Se acopla bien a la utilización de bases de datos, debido a la correspondencia entre las estructuras.
Desventajas
- Limitaciones del programador: Es posible el programador desconozca algunas características del paradigma y de hecho siga utilizando el paradigma estructurado.
- No hay una forma única de resolver los problemas. Esto puede llevar a que diferentes interpretaciones de la solución planteada emerjan.
- Se requiere una documentación amplia para determinar la solución planteada.