Категории: Все - complejidad - curva - modularidad - rendimiento

по Sarahi Herrera 1 года назад

213

PROGRAMACION ORIENTADA A OBJETOS ( VENTAJAS Y DESVENTAJAS)

La Programación Orientada a Objetos (POO) presenta tanto ventajas como desventajas que deben ser consideradas. Entre las desventajas se encuentra la complejidad del código debido al uso excesivo de jerarquías de clases y relaciones entre objetos, lo que puede dificultar su comprensión y mantenimiento.

PROGRAMACION ORIENTADA A OBJETOS ( VENTAJAS Y DESVENTAJAS)

PROGRAMACION ORIENTADA A OBJETOS ( VENTAJAS Y DESVENTAJAS)

DESVENTAJAS

Resistencia al cambio y adaptabilidad.
Una vez que se establece una jerarquía de clases y se definen las relaciones entre objetos, puede resultar difícil realizar cambios significativos sin afectar otras partes del sistema. Esto puede limitar la capacidad de adaptación a los cambios en los requisitos o tecnologías emergentes.
Sobreingeniería y exceso de abstracción.
En algunos casos, los desarrolladores pueden caer en la trampa de la sobreingeniería al aplicar excesivamente los principios de la POO. La creación de jerarquías de clases complejas y la abstracción excesiva pueden resultar en un código complicado y difícil de entender.
Complejidad y rendimiento.
El uso excesivo de jerarquías de clases y relaciones entre objetos puede hacer que el código sea difícil de entender y mantener.
Mayor consumo de memoria.
En comparación con otros paradigmas de programación, como la programación procedural, la POO puede requerir más memoria para almacenar los objetos y sus datos.
Curva de aprendizaje inicial.
La Programación Orientada a Objetos puede resultar compleja para aquellos que no están familiarizados con sus conceptos y principios. La comprensión de conceptos como clases, objetos, herencia y polimorfismo puede requerir tiempo y esfuerzo.

VENTAJAS

MODULARIDAD Y ORGANIZACION
Fomenta la modularidad, lo que significa que el código se divide en módulos independientes y bien definidos. Cada clase encapsula sus propios datos y comportamientos, lo que facilita su comprensión y mantenimiento. Además, la organización jerárquica de las clases en paquetes y módulos permite una estructura clara y coherente del proyecto
ABSTRACCION Y ENCAPSULACION
La abstracción es una característica central de estas herramientas, que permite representar conceptos complejos del mundo real en forma de objetos. Por otro lado, la encapsulación asegura que los detalles internos de una clase estén ocultos al mundo exterior. Solo se exponen los métodos y propiedades necesarios para interactuar con el objeto, lo que proporciona una interfaz clara y reduce la complejidad.
HERENCIA Y POLIMORFISMO
La herencia es una característica poderosa de la POO que permite crear nuevas clases basadas en clases existentes. Esto facilita la creación de jerarquías de clases y promueve la reutilización de código de una manera estructurada. Además, el polimorfismo permite que un objeto pueda tomar diferentes formas o comportarse de diferentes maneras según el contexto.
MANTENIMIENTO Y ESCALABILIDAD
Facilita el mantenimiento del código a largo plazoDebido a su modularidad y organización, es más fácil identificar y solucionar problemas, así como realizar actualizaciones y mejoras..
REUTILIZACION DE CODIIGO
Permite aprovechar el trabajo previo al crear nuevas clases y objetos basados en los existentes.

¿ QUE ES LA PROGRAMACIÓN ORIENTADA A OBJETOS ?

La POO es un paradigma que permite organizar y estructurar el código en torno a objetos, que son entidades que representan cosas del mundo real.