Часть 3. Рефакторинг SrokOk: Clean Architecture
В прошлых постах я рассказал, как дубли категорий («Овощи» и «Овощи ») заставили меня переписать схему БД: вынести категории в отдельную таблицу, добавить Foreign Key
Когда я поменял модель данных, пришлось переписывать DAO, мапперы, Use Case и UI. Но изменения были локальными:
• Data слой: вместо строк — JOIN-запросы. • Domain слой: Use Case стал подтягивать имя категории через репозиторий. • Presentation слой: UI теперь получает готовый объект (product + categoryName), но логика отображения не изменилась.
Почему я не утонул? Clean Architecture изолировала слои. Я менял каждый слой по отдельности, не боясь сломать другой.
Вывод: Clean Architecture не предотвращает ошибки проектирования БД. Но она делает рефакторинг управляемым, когда эти ошибки всплывают.