Incoming ports — входящие порты — последний недостающий элемент, который связывает слой домена и слой UI.
Именно порты — это то место, где система получает инструкции извне и знает, как их обработать.
По сути, порты — это граница между нашим BFF и тем, что находится в браузере пользователя.
Подробно останавливаться на них нет смысла — всё это уже отлично описано в документации по шестиугольной архитектуре (Hexagonal Architecture). Формально, входящие порты в матричной архитектуре выполняют ту же роль.
Зато стоит отметить, какими могут быть виды входящих портов 👇
* API-вызов
Когда мы напрямую обращаемся к хендлеру и обрабатываем параметры запроса.
* Серверный action
Почти то же самое, что и API-хендлер, но с улучшенным DX — вызов эндпоинта замаскирован под вызов обычной функции.
* Серверный компонент
Вариант для случаев, когда мы работаем с fullstack-компонентами или layout-структурами в новом роутере Next.js.
Вероятно, существуют и другие способы запускать use case в приложении, но мы используем только эти три на постоянной основе.
Post #112
158
- 👍 2
- ❤ 1
- 🔥 1