Как реализовать Repository Pattern в Node.js?

Middle
316 просмотров
AFK Offer AI

Repository инкапсулирует доступ к данным. interface IUserRepository { findById(id: string): Promise; findByEmail(email: string): Promise; save(user: User): Promise; delete(id: string): Promise }. Реализация: class PrismaUserRepository implements IUserRepository. Сервис принимает IUserRepository через constructor. В тестах: class InMemoryUserRepository implements IUserRepository — без БД. Преимущества: тестируемость, замена БД без изменения бизнес-логики, кастомные бизнес-специфичные методы.

Следующий вопрос

Как использовать Express Router для организации кода?