Рефакторинг — что это за зверь
Продолжаю работать над своим pet-проектом — визуальным редактором схем фриволите.
И в какой-то момент я поймала себя на мысли: код стал слишком большим. Стало неудобно ориентироваться в нём.
Открываешь файл — пара тысяч строк, и всё вперемешку: логика, отрисовка, состояния. И вроде работает… но удобства при этом нет.
И тут ChatGPT сказал фразу: «Пора делать рефакторинг». А я и знать не знаю, что это.
Рефакторинг — это что вообще?
Если коротко: рефакторинг — это приведение кода в порядок без изменения логики работы.
Не переписать всё с нуля, не сломать, а разложить по полочкам, убрать лишнее, сделать так, чтобы код было легче читать, понимать и развивать.
Сначала было страшно: делаешь перенос — и куча ошибок. Смотришь, а их уже 50, всё подчёркнуто красным. Вроде исправляешь одну — появляются другие.
В какой-то момент было ощущение, что я всё сломала окончательно и придётся переделывать с нуля.
Небольшое отступление.
Vibe coding и нейросети
Сейчас часто говорят про vibe coding — кодинг с помощью нейросетей.
У меня это выглядело так: я не копировала код вслепую.
Я спрашивала:
где логика должна жить,
почему этот класс здесь,
что вообще нормально для архитектуры.
Нейросеть помогала разобраться, а не делала всё за меня. По сути — это как старший напарник, который подсказывает направление, страхует, но решения ты всё равно принимаешь сам.
И параллельно учишься.
Расскажу вкратце что мы сделали за пару вечеров (да, именно вечеров, не недель):
Было: один огромный файл с логикой, отрисовкой, UI и вспомогательными функциями.
Стало: разделили проект по папкам, где:
models/ — логика элементов и данные
widgets/ — экран редактора, canvas, панель свойств
utils/ — вспомогательные функции и расширения
main.dart — только точка входа
В итоге: код стал короче и чище, ориентироваться стало в разы проще, проект запустился (УРААА), появилось ощущение контроля.
Какой вывод я сделала: рефакторинг — это про удобство и рост проекта.
Я понимаю, что проект развивается, хочется добавить ещё много всего, а теперь, когда есть чёткая и понятная структура, сделать это будет намного проще.
Да, было страшно из-за количества ошибок, но главное — не останавливаться, идти шаг за шагом, и тогда всё получится.
И да, делать это с помощью нейросетей — нормально. Главное — думать головой, а не просто копировать, и тогда у вас всё получится.
Надеюсь, мой пост пригодится тем, кто хочет начать и боится, и тем, кого запугали люди, которые говорят: «фу, нейросети».
Для меня это очень полезный инструмент, который упрощает работу и обучает на практике — как в своё время Illustrator и Photoshop.
Всем успехов и новых начинаний. Скоро увидимся🙂

