TGViewer
Мобильная разработка Мобильная разработка @mobi_dev · 13.2K subscribers
Post #4744 1.03K
Как безопасно перевести Flutter-код на первичные конструкторы Dart 3.12

В Dart 3.12 появилась экспериментальная поддержка primary constructors, или первичных конструкторов: поля класса и параметры конструктора можно объявить одной записью. В Flutter это сокращает шаблонный код виджетов, но массовая замена требует проверки поведения, а не только синтаксиса.

Попытка поручить миграцию агентам давала разные результаты даже при повторных запусках. Поэтому автор сделал детерминированную утилиту: она читает дерево кода через пакет Dart analyzer и применяет фиксированные правила.

Утилита выполняет три вида преобразований и пропускает код в 31 ситуации, когда безопасность замены нельзя доказать. Она записывает файл только после успешного разбора, а тесты проверяют результат анализатором. В инженерном разборе миграции показано, что именно нужно проверять кроме синтаксиса.
  • 💯 1
More from @mobi_dev
  1. Sep 20, 2026Как ProfilingManager на Android 15+ помогает искать причины тормозов в продакшене Profilin…
  2. Sep 20, 2026Как использовать свайп-действия вне List в SwiftUI В SwiftUI свайп-действия вроде удаления…
  3. Sep 20, 2026Как переносить сложные Android-экраны на Jetpack Compose: опыт TikTok Команда TikTok перен…
  4. Sep 19, 2026Как управлять кнопками панели инструментов в SwiftUI Одна и та же панель в SwiftUI ведёт с…
  5. Sep 19, 2026Как безопасно освобождать временные ресурсы с defer в Swift В Swift блок defer выполняется…
  6. Sep 19, 2026Как Flutter готовит приложения к новым версиям iOS Между WWDC и стабильным релизом iOS у к…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →