TGViewer
Android Broadcast Android Broadcast @android_broadcast · 14.5K subscribers
Post #9867 7.97K
🤔 Рефакторить нельзя переписать

Работа с AI-агентами натолкнула меня на мысль, которую давно хотел сформулировать вслух. Когда перед тобой стоит задача — переход с View на Compose, смена архитектуры, миграция на KMP — первый инстинкт: «давай отрефакторим что есть». И вот тут я всё чаще останавливаюсь и задаю себе вопрос: а стоит ли?

Чтобы нормально рефакторить старый код — его нужно сначала покрыть тестами. Понять все сценарии. Убедиться, что после изменений всё ведёт себя так же. Это огромная работа, которую часто недооценивают, а то и вовсе перекладывают на регресс тестирование.

А что если написать рядом новый код по той же спецификации поведения, без груза старых ограничений. Запустил на двух устройствах, сравнил — и всё. Никаких «а вдруг что-то сломалось».

Агенты, кстати, это подтверждают 🤖 Они заметно лучше справляются с написанием нового кода по спецификации, чем с попыткой переписать существующий. Старый код накладывает ограничения. Новый — их снимает.

Мой подход сейчас такой:
👉 Простая библиотека или изолированный модуль → спокойно мигрируй постепенно
👉 Что-то сложное с бизнес-логикой → пиши рядом, потом подменяй импорты

💬 А вы как поступаете? Когда стоит задача миграции или переработки большого куска — рефакторите или пишете заново? Интересно услышать ваш опыт

#Архитектура #Рефакторинг
  • 👍 42
  • 👎 18
  • ❤ 10
  • 🤔 2
More from @android_broadcast
  1. Sep 27, 2026🤖 Android Dev Summit возвращается! Конференция от Google про Android для разработчиков сн…
  2. Sep 25, 2026🚀 Вышел WorkManager 2.12.0 👉 Новое экспериментальное Work Metrics API для изучения истор…
  3. Sep 25, 2026🚀 Вышел androidx.navigation3 1.2.0. И этот как раз допил того, что надо в реальных кейсах…
  4. Sep 25, 2026🚀 Google готовит библиотеку AndroidX Backup Test (пока только первая альфа) для тестирова…
  5. Sep 24, 2026Android Broadcast pinned a photo
  6. Sep 24, 2026🐘 Вышел Gradle 9.8.0 Что нового 👉 Поддержка Java 27 👉 Улучшили отображение ошибок в лог…
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 →