Встречается на собеседованиях • сегодня
Работал ли с шестигранной архитектурой
Да, работал. Шестигранная архитектура (Hexagonal Architecture) — это подход, при котором бизнес-логика изолирована от внешних зависимостей (UI, БД, API). Входные и выходные порты определяют контракты, а адаптеры их реализуют.
Пример:
java
// Порт (интерфейс для взаимодействия)
public interface UserRepository {
User findById(Long id);
}
// Адаптер (реализация для БД)
public class JpaUserRepository implements UserRepository {
@Override
public User findById(Long id) {
// JPA-запрос к БД
}
}
// Ядро (бизнес-логика)
public class UserService {
private final UserRepository repository;
text
public UserService(UserRepository repository) {
this.repository = repository;
}
public User getUser(Long id) {
return repository.findById(id);
}}
text
**Плюсы:**
- Тестируемость (можно подменить адаптеры на моки).
- Гибкость (легко заменить БД или UI).
- Четкое разделение ответственности.
**Минусы:**
- Больше boilerplate-кода.
- Сложнее для простых проектов.
Использовал в проектах с высокой нагрузкой и частыми изменениями требований.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы