Встречается на собеседованиях • сегодня
Как понять, что код относится к гексагональной архитектуре
Гексагональная архитектура (или порты и адаптеры) определяется по следующим признакам:
- Ядро приложения (доменная логика) изолировано от внешних зависимостей (UI, БД, API)
- Порты (интерфейсы) определяют контракты для взаимодействия
- Адаптеры реализуют эти порты для конкретных технологий
Пример структуры:
python
# Порты (интерфейсы)
class UserRepository(ABC):
@abstractmethod
def save(self, user): pass
# Ядро (доменная логика)
class UserService:
def __init__(self, repo: UserRepository):
self.repo = repo
def register(self, user):
self.repo.save(user)
# Адаптер (реализация порта)
class PostgresUserRepository(UserRepository):
def save(self, user):
# Реализация для PostgreSQLКлючевые признаки:
- Зависимости направлены внутрь (ядро ничего не знает о внешнем мире)
- Легко заменить адаптеры (например, перейти с Postgres на MongoDB)
- Тестирование ядра возможно без реальных адаптеров (через моки)

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы