Si crea una clase de repositorio que encapsula toda su lógica de persistencia para una entidad determinada, como PersonRepository, pero su clase de repositorio no implementa el patrón Unidad de trabajo o el patrón de Mapa de identidad, ¿todavía se considera un repositorio? En otras palabras, ¿se requiere la Unidad de trabajo y el Mapa de identidad para la implementación de un repositorio, o podemos simplemente llamar a cualquier clase que encapsula nuestra lógica de persistencia como un repositorio?¿Sigue siendo un repositorio un repositorio sin unidad de trabajo?
Debo añadir una cosa. Si un repositorio no requiere estos patrones y en realidad es solo un contenedor para los métodos de persistencia, ¿cuál es la diferencia entre un repositorio y un DAO (Objeto de acceso a datos)? ¿Estamos simplemente creando múltiples nombres para el mismo objeto o nos falta parte de lo que se supone que es un repositorio?