Что такое Hexagonal Architecture (Ports and Adapters)?

Senior
286 просмотров
AFK Offer AI

Hexagonal architecture: приложение в центре, снаружи — "порты" (интерфейсы) и "адаптеры" (реализации). Driving side (входящие): HTTP контроллер, CLI, tests — вызывают Use Cases. Driven side (исходящие): репозитории, email, SMS — реализуют интерфейсы. Use Case зависит от интерфейса IUserRepository, не от PostgresUserRepository. В тестах подставляешь InMemoryUserRepository. Синоним Clean Architecture — разные названия одной идеи. В Node.js: интерфейсы через TypeScript, DI через constructor.

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

Как работает cluster модуль в Node.js?