un punto del estilo arquitectónico que me gustaría tener su opinión en favor:OO Coding: ¿para usar Object Managers o no?
Mi ORM me ha dado un objeto de usuario que corresponde a un usuario de mi sistema. Quería desarrollar un conjunto de métodos para manejar a los usuarios: GetByUsername(), Authenticate(), VerifyLoginPassword() etc. Sin embargo, me parece que algunos de estos métodos no pertenecen realmente a la clase User, p. Ej. GetByUsername() se siente al menos como un método estático de Usuario, pero ¿no sería más "limpio" tener otra clase, digamos "UserManager" que nos proporciona estas tareas de administración de usuarios? Parece un poco extraño que una instancia de Usuario contenga el método Authenticate(), por ejemplo, si es el sistema de seguridad el que realiza la autenticación.
Lo que me preocupa es que termine siguiendo este modelo hasta el punto en que la clase de usuario no es más que una estructura, y mis clases Administrador de usuarios y Administrador de seguridad realmente hacen todo el trabajo del método. No se siente muy "OO" tener todas estas clases de administrador manipulando objetos livianos.
¡Se agradecerá cualquier idea o relación con el estado de la técnica sobre este tema filosófico!
Dios mío, es un libro caro. –