Встречается на 5% собеседований по Python
Что такое чистая архитектура
Чистая архитектура (Clean Architecture) — это подход к проектированию ПО, при котором код разделяется на слои с четкими границами и зависимостями, направленными внутрь (к ядру системы). Основная цель — минимизация связей между компонентами, упрощение тестирования и поддержки.
Основные принципы:
- Независимость от фреймворков — бизнес-логика не зависит от внешних библиотек.
- Тестируемость — ядро можно тестировать без UI, БД и других внешних зависимостей.
- Инверсия зависимостей — внешние слои зависят от внутренних (не наоборот).
Пример слоев в Python:
python
# Domain (ядро) — бизнес-логика
class User:
def __init__(self, name: str):
self.name = name
# Use Cases (сценарии)
class CreateUser:
def __init__(self, user_repo):
self.user_repo = user_repo
def execute(self, name: str):
user = User(name)
self.user_repo.save(user)
# Infrastructure (внешний слой)
class UserRepository:
def save(self, user: User):
print(f"Saving {user.name} to DB")Плюсы:
- Гибкость (легко заменить БД, фреймворк).
- Упрощенное тестирование (можно мокать репозитории).
- Четкое разделение ответственности.
Минусы:
- Избыточность для простых проектов.
- Дополнительные абстракции усложняют код.

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