Principios SOLID desmitificados — (C)
Una clase solo debe ser responsable de un solo propósito, lo que significa que una clase solo debe tener un tipo de trabajo para realizar, como (lógica de base de datos, lógica de registro, etc.).
Ejemplo de escenario
Considere una aplicación que calcule la suma del área de todas las formas (círculo, cuadrado, triángulo, etc.) en una matriz determinada y envíe el resultado en cualquier formato que necesitemos.
Mal escrito
En la clase AreaCalculator, no solo calculamos la suma de las áreas de las formas proporcionadas, sino que también generamos datos en formato JSON. Considere un escenario en el que la salida debe convertirse a otro formato como CSV, HTML, etc.
Este código es funcionalmente correcto pero viola el Principio de Responsabilidad Única. La clase AreaCalculator solo debe calcular la suma de las áreas de las formas proporcionadas. No debe preocuparse por mostrar datos en JSON o cualquier otro formato.
Bien escrito
Para remediar esta violación, necesitamos crear una clase separada para manejar la salida de los datos de la clase AreaCalculator . Esta nueva clase AreaCalculatorDisplay manejará la lógica para generar los datos en cualquier formato dado.
Beneficios principales
- Pruebas : una clase con una responsabilidad tendrá muchos menos casos de prueba.
- Acoplamiento más bajo : menos funcionalidad en una sola clase tendrá menos dependencias.
- Organización : las clases más pequeñas y bien organizadas son más fáciles de buscar que las monolíticas.

![¿Qué es una lista vinculada, de todos modos? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































