What are the benefits of using Repository pattern?
- Separation of concerns between business and data access layers
- Improved testability (can mock repositories)
- Centralized query logic for maintainability
- Easier to switch persistence implementations
- Promotes cleaner and more organized code