En este artículo voy hacer una breve introducción a los principios Solid (Solid Design Principles). Los principios SOLID representan 5 principios de diseño que básicamente deberíamos usar para hacer el diseño de software mas entendible, flexible y mantenible. La teoría de los principios SOLID fue introducida por Rober C. Martin. Este es un acrónimo para establecer los cincos principios básicos de la programación orientada a objetos y diseño. Este acrónimo tiene bastante relación con los patrones de diseño, en especial con la alta cohesion y el bajo acoplamiento.
Discutamos primero la gran razón porque la mayoría de las aplicaciones fracasan.
Las siguientes son las principales razones porque la mayoría del software no tiene éxito.
- Se agrega muchas funcionalidades en las clases (aquí me refiero que una cantidad enorme de funcionalidades son agregadas dentro de una clase aunque ellas no estén relacionadas a la misma).
- Otra razón es el alto acoplamiento entre las clases. Si las clases son dependientes entre ellas, entonces un cambio en una de ellas afectará las otras clases también.
Solución:
- Necesitamos implementar la correcta arquitectura (pensar en patrones como MVC, arquitectura de 3 capas , MVP, etc) según los requerimientos del proyecto.
- Debemos seguir los principios de diseño (por ejemplo: principios SOLID)
Introducción a los principios SOLID
Los principios SOLID son básicamente usados para manejar la mayoría de los problemas de diseño de software que generalmente como desarrolladores podemos enfrentar en el día a día cuando estamos programando. Los principios SOLID representan 5 principios de diseño que básicamente usamos para hacer diseño de software mas entendible, flexible y mantenible como comentábamos anteriormente.
Acrónimo SOLID:
- S: Responsabilidad simple (Single responsibility) o conocido como SRP (siglas en ingles)
- O: Abierto/Cerrado (Open/Close) o conocido como OCP (siglas en ingles)
- L: Sustitución Liskov (Liskov substitution) o conocido como LSP (siglas en ingles)
- I: Segregación de Interface (Interface segregation) o conocido como ISP (siglas en ingles)
- D: Inversión de dependencias (Dependency inversion) o conocido como DIP (siglas en ingles)
Siguiendo los principios de diseño SOLID nos ayuda a:
- Reducir la complejidad del código
- Incrementar la extensibilidad y el mantenimiento
- Disminuir errores e implementar reusabilidad.
- Reducir el alto acoplamiento
- Software más fácil de testear
Hasta aquí vimos una breve introducción a los principios SOLID. En el próximo artículo, comenzaremos a discutir el primero de estos principios (Responsabilidad simple) y utilizaremos un ejemplo en C# para entenderlo de manera más fácil. Espero que este post sea de ayuda para poder entender la necesidad de utilizar los principios SOLID en nuestro diseño de software. Hasta la próxima !!!

Admin

Latest posts by Admin (see all)
- Libreria de flujo de datos en C# (TPL Dataflow) - 6 noviembre, 2019
- Principio de Responsabilidad simple (Single Responsibility) - 19 agosto, 2019
- SOLID, cinco principios básicos de diseño software (SOLID Design Principles) - 7 agosto, 2019