Встречается на собеседованиях • сегодня
Какие абстракции предполагает гексагональная архитектура
Гексагональная архитектура (Ports & Adapters) предполагает разделение кода на три слоя:
1. **Домен (ядро)** - бизнес-логика без зависимостей от внешнего мира.
2. **Порты** - интерфейсы для взаимодействия с внешними системами (API, БД и т.д.).
3. **Адаптеры** - реализация портов для конкретных технологий.
Пример на TypeScript:
```typescript
// Порт (интерфейс)
interface UserRepository {
save(user: User): Promise;
}
// Адаптер для MongoDB
class MongoUserRepository implements UserRepository {
async save(user: User) {
// Реализация для MongoDB
}
}
// Домен использует только порт
class UserService {
constructor(private repo: UserRepository) {}
async register(user: User) {
// Бизнес-логика
await this.repo.save(user);
}
}
```
Ключевые принципы:
- Зависимости направлены к ядру
- Внешние системы подключаются через адаптеры
- Легко тестировать (можно подменить адаптеры моками)

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