Устаревание публичного API пакетов, улучшение DX и capability-based архитектура драйвера: что нас ждет в новом релизе Duit?

Готовится масштабное обновление Duit, которое принесёт не только новый уровень удобства работы с фреймворком, но и зафиксирует новые подходы к его дальнейшему развитию. Этот релиз — про архитектуру, предсказуемость и осознанные ограничения, а не просто про новые возможности.

1. Устаревание публичного API

Начиная с duit_kernel v4.2.0, помечены @Deprecated устаревшие способы взаимодействия с драйвером. Предварительный список устаревших сущностей можно посмотреть в PR.

Эти изменения — подготовительный этап к более чистому и компактному API в следующем мажорном релизе. Текущая версия даёт время на миграцию и позволяет адаптировать код под новую архитектуру без резких breaking changes.

Цель этого шага — сокращение публичного API и фиксация более строгих и понятных контрактов.

2. Переход к сapability-based архитектуре драйвера

Архитектура UIDriver — ключевого интерфейса драйвера и оркестратора UI — была коренным образом переосмыслена. Вместо монолитного интерфейса, агрегирующего все зависимости и обязанности, теперь используется модульная система на основе capability-mixins.

Каждая подсистема драйвера оформлена как отдельная capability, например: ServerActionExecutionCapabilityDelegate, TransportCapabilityDelegate и тд.

Такой подход позволяет: • Явно фиксировать доступные возможности драйвера; • Уменьшить связанность компонентов; • Упростить расширение, тестирование и сопровождение кода; • Улучшить DX за счёт более прозрачной архитектуры.

Подробнее о том, что такое capability-based архитектура, какие проблемы она решает и как именно работает в Duit, — в новой статье, которая доступна по ссылке.

Release candidate доступен на pub.dev

Далее запланировано масштабное обновление документации, а также подробные гайды по миграции на новую архитектуру.

Поддержать проект: • КодомДенежкойЗаказать консультацию