Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cuál es el principio sólido?

¿Cuál es el principio sólido?

El principio sólido incluye los siguientes cinco:

1. Principio de Responsabilidad Única (SRP): Indica que una clase tiene y tiene una sola responsabilidad. Una clase es como un contenedor, puede agregar cualquier cantidad de propiedades, métodos, etc.

2. Principio Abierto-Cerrado (OCP): Una clase debe estar abierta a la extensión y cerrada a la modificación. Esto significa que una vez que se crea una clase y otras partes de la aplicación comienzan a usarla, no se debe modificar.

3. Principio de sustitución de Liskov (LSP): la subclase derivada debe ser reemplazable por la clase base, lo que significa que dondequiera que pueda aparecer la clase base, la subclase definitivamente puede aparecer. Vale la pena señalar que cuando el comportamiento polimórfico se implementa mediante herencia, si la clase derivada no cumple con el LSP, el sistema puede causar una excepción.

4. Principio de Segregación de Interfaz (ISP): Indica que no se debe obligar a las clases a depender de métodos que no utilizan, es decir, una interfaz debe tener el menor número de comportamientos posible, debe estar optimizada. y soltero.

5. Principio de inversión de dependencia (DIP): indica que los módulos de alto nivel no deben depender de módulos de bajo nivel, sino que deben depender de clases o interfaces abstractas. Esto significa que no se deben utilizar módulos concretos de bajo nivel dentro de módulos de alto nivel.

Información ampliada:

El principio DIP estipula que cuando hay dependencias entre clases, se deben usar abstracciones (como interfaces) para definirlas en lugar de hacer referencia directa a clases. Esto reduce los errores causados ​​por cambios en los módulos de nivel inferior que causan errores en los módulos de nivel superior. DIP se utiliza a menudo en la inyección de dependencia.

Cuando los desarrolladores siguen los principios del ISP, las clases grandes implementan múltiples interfaces más pequeñas, agrupando la funcionalidad según el propósito. Las dependencias están asociadas con aquellas que se utilizan para un acoplamiento flexible, lo que aumenta la robustez, la flexibilidad y la reutilización.