oop - que - ¿Diferencia entre los conceptos básicos de POO vs SÓLIDO?
programacion orientada a objetos pdf (2)
La programación orientada a objetos es una forma de programación que se basa en la idea de "objetos". Piezas de código redondeadas que describen las propiedades (ancho, tiempo, posición ...) y el comportamiento (cambio de ancho, tiempo de visualización, cálculo de posición ...) de las entidades requeridas que trabajan juntas para resolver un problema específico. SOLID es un conjunto de principios que le ayudan a diseñar una solución para un problema específico en el dominio orientado a objetos. Piense en ello como un conjunto de reglas que lo ayudarán a visualizar la forma más correcta de llegar a una solución para un problema.
Sé de OOP (programación orientada a objetos) y SOLID.
- Conceptos básicos de OOP
- Encapsulacion
- Abstracción
- Herencia
- Polimorfismo
y
- SÓLIDO
- Principio de Responsabilidad Única
- Principio Abierto / Cerrado
- Principio de sustitución de Liskov
- Principio de Segregación de Interfaz
- Principio de Inversión de Dependencia)
Sin embargo, no estoy seguro de cuáles son las diferencias exactas y si SOLID es un subconjunto de OOP. ¿Alguien puede ayudar a explicar las diferencias?
La respuesta es simple:
- Los lenguajes o conceptos que no admiten Encapsulación, Abstracción, Herencia y Poli no están orientados a objetos . Si hace algo orientado a objetos, siempre puede aplicar estos conceptos básicos de OO, porque están disponibles. Uno no llama a tales cosas principios.
- SOLID a cambio es opcional. Al desarrollar un diseño OO , debe esforzarse por ser SÓLIDO, aplicando los conceptos básicos subyacentes . El sólido solo determina qué tan "bueno" es su diseño, no si está orientado a objetos o no. Son principios.
PD: No comprendo los comentarios negativos a su pregunta, ya que es legítimo, se puede responder con claridad y es confuso para muchos recién llegados OO. Votar por encima de mí.