Mediates between the domain and data mapping layers using a collection-like interface for accessing domain objects. ... A system with a complex domain model often ...
The Repository pattern. Repositories are classes or components that encapsulate the logic required to access data sources. They centralize common data access functionality, providing better maintainability and decoupling the infrastructure or technology used to access databases from the domain model layer.