Встречается на собеседованиях • сегодня
Что такое Onion архитектура
Onion Architecture — это подход к проектированию приложений, где слои зависят от ядра, а не друг от друга. Основные принципы:
- Ядро (Domain) — содержит бизнес-логику и модели.
- Сервисы (Application) — реализуют сценарии использования.
- Инфраструктура (Infrastructure) — базы данных, внешние API.
- UI/API (Presentation) — взаимодействие с пользователем.
Зависимости направлены внутрь: внешние слои зависят от внутренних, но не наоборот. Это упрощает тестирование и замену компонентов.
Пример:
java
// Domain (ядро)
public interface UserRepository {
User findById(Long id);
}
// Application (сервис)
public class UserService {
private final UserRepository repository;
public UserService(UserRepository repo) {
this.repository = repo;
}
public User getUser(Long id) {
return repository.findById(id);
}
}
// Infrastructure (реализация репозитория)
public class JpaUserRepository implements UserRepository {
@Override
public User findById(Long id) { /* ... */ }
}Преимущества: изолированность бизнес-логики, гибкость, легкость тестирования.

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