Supongamos que estamos diseñando una clase UserServiceImpl que realiza operaciones CRUD (Crear, Leer, Actualizar y Eliminar). En mi opinión, Crear, Leer, Actualizar y Eliminar son cuatro razones para que una clase cambie. ¿Viola esta clase el Principio de Responsabilidad Individual? Si infringe, , entonces deberíamos tener cuatro clases como CreateUserServiceImpl
, ReadUserServiceImpl
, UpdateUserServiceImpl
, y DeleteUserServiceImpl
. ¿No es excesivo tener muchas clases de ?Cómo aplicar el principio de responsabilidad única a una clase de servicio
Supongamos que defino 4 interfaces para cada una de las operaciones de creación, lectura, actualización y eliminación y mi clase de servicio implementa las cuatro interfaces. Ahora solo puedo tener una sola clase de implementación pero al separar sus interfaces he desacoplado los conceptos como en lo que respecta al resto de la aplicación. ¿Es esta la manera correcta o ve algunos problemas en ella?
Gracias por la respuesta. He actualizado la pregunta. ¿El diseño es mejor ahora? – Shekhar