В последние годы гексагональная архитектура, то есть порты и адаптеры…

Kaan Baytan

В последние годы гексагональная архитектура, то есть порты и адаптеры, стала очень популярна среди крупных компаний, и это не случайно. Давайте кратко рассмотрим, почему это так хорошо работает.

Прежде всего, отметим, что гексагональная архитектура в основном состоит из 3-х слоев, четко отделенных друг от друга:

1. Домен

Это сердце системы.

Здесь находится вся бизнес-логика, и эта логика полностью независима от фреймворков, баз данных и API.

Домен обычно содержит:

Сущности — да, это не сущности в базе данных

Объекты-значения — неизменяемые объекты

Бизнес-правила

Доменные службы

Особые исключения

Основная идея: самая важная часть системы должна оставаться максимально чистой и стабильной.

2. Приложение

Этот уровень действует как своего рода «контроллер», который управляет вводом и выводом системы.

Обычно они находятся здесь:

Варианты использования

DTO и картографы

IN Ports — операции, входящие в систему

OUT Ports — исходящие операции на уровень инфраструктуры

Этот уровень позволяет избежать смешивания бизнес-логики с техническими деталями и сохраняет структуру системы более аккуратной.

3. Инфраструктура

Все технические подробности уже здесь:

Рамки

Базы данных

Очереди сообщений

ОТДЫХ

ГрафQL

SMTP

Интеграции с внешними системами

Этот уровень реализует адаптеры.

Благодаря адаптерам:

Можно переключиться с MySQL на MongoDB, не затрагивая уровень домена.

Запросы могут отправляться к внешним API.

Сообщения можно получать из очередей

Возможна работа с фреймворками

Технические детали не загрязняют внутренний бизнес-код

Благодаря подходу «Порты и адаптеры» инфраструктура становится одним из самых гибких уровней.

дать хастагту

#HexagonalArchitecture #PortsAndAdapters #SoftwareArchitecture #CleanArchitecture #DomainDrivenDesign #DDD #BackendDevelopment #SoftwareEngineering #SystemDesign #DomainLayer #ApplicationLayer #InfrastructureLayer #UseCase #CleanCode #SOLID #Microservices #ModularMonolith #Backend #Programming #Developer #КачествоКода #MaintainableCode

В последние годы гексагональная архитектура, то есть порты и адаптеры…