Concepto del principio de responsabilidad única

El principio de responsabilidad única es uel primero de los principios SOLID. Indica que una clase se encarga de solucionar un solo concepto, por lo que solo puede tener una única razón por la que se deba modificar, que es el cambio en ese concepto. Esto se consigue realizando pequeñas clases con objetivos muy delimitados.

La finalidad de este principio es tener un software robusto y con una gran cohesión. Con ello somos capaces de componer clases inyectando colaboradores pequeños que realizan las diferentes funciones necesarias dentro de la clase. Además se evita la duplicidad de código.

De esta forma, tendremos servicios que orquestan los pasos para realizar una tarea mediante el uso de otras clases que tienen muy bien definida su responsabilidad. Una forma facil de comprobar si una clase esta respetando el principio de responsabilidad única es ver si nuestras clases tienen más de un método público, si es así, esa clase tiene más de una forma de utilizarse y, por consiguiente, más de una tarea.

Por otra parte, si una clase se encarga de una sola tarea, su nombre será muy concreto y podremos saber claramente que hace nuestro orquestador en cada paso.

Clase con multiples métodosTeniendo esto en la cabeza, clases como «OrderClass» donde pueden ponerse cualquier método que se utilice para los pedidos no tienen cabida.

Clase con un solo métodoPara cumplir con el principio de responsabilidad única tendrían que crearse clases del tipo «ListOrder», «CheckOrder» o «CalculateTotalOrder».

De esta manera, en caso de necesitarlo, podemos convertir el listado de productos en un interface y que varias clases implementen dicho interface para poder mostrar el listado de productos dependiendo del lugar donde utilizarlo.

interface con dos implementaciones

DEJA UNA RESPUESTA

Por favor ingrese su comentario!
Por favor ingrese su nombre aquí