Skip to content

Instantly share code, notes, and snippets.

@vetalt
Created November 17, 2014 15:38
Show Gist options
  • Save vetalt/689c1b150de9d0a6b31e to your computer and use it in GitHub Desktop.
Save vetalt/689c1b150de9d0a6b31e to your computer and use it in GitHub Desktop.
phase refactoring
https://healthycode.atlassian.net/browse/DEV-2483
нам предстоит выполнить изменения в ядерном коде, которые затронут многие вещи.
охватить сразу всё будет нелегко, поэтому предлагаю постепенный переход в два этапа:
1) на первом этапе вводим User::track (PhaseBundle\UserTrack) и дублируем с его помощью функционал связанный с User::currentUserProgram;
2) на втором этапе избавляемся от функционала связанного с User::currentUserProgram;
для этого на первом этапе желательно оставлять в коде метки deprecated, чтоб потом было проще вычищать старый код.
можно реализовывать сразу два этапа в случаях когда нет риска сломать систему.
попутно нужно вычищать существующий код от явных аттавизмов.
например, иногда передаём в шаблон переменные, которые там не используются и т.п.
в то же время не нужно увлекаться рефакторингом, потому что это лишние проблемы при мержинге и дополнительный риск что-то сломать.
так как с ядерным кодом будет работать несколько человек, нужно сразу покрывать новый код тестами и постоянно проверять.
стараемся не перегружать ProgramBundle несвойственным ему кодом.
основные страницы для переделки:
/registration
/account/program
/schedule
/workout
/meals
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment