Когда вы работаете над приложением с плохой архитектурой, и вы определенно знаете, что он не будет поддерживать масштабирование, какое лучшее решение для улучшения приложения?
Приложение, над которым я работаю, было построено очень плохо, трудно понять и заняло около 6 месяцев. Хотя я только что прибыл в этот проект, и нам нужно принимать решения.
Учитывая, что время - деньги, как бы вы спорили о правильном решении?
Спасибо
Ответ зависит от человека. Для меня я оставил бы все остальное как есть. Но я бы начал разрабатывать новые действия или функции в правильном порядке. И как только вы закончите все, сделайте это немного лучше, реорганизовывая старые.
Я не думаю, что на это можно ответить в общем виде. Но я мог бы задать несколько вопросов, и ответы могли бы привести вас к разрешению:
Что вызвало плохой дизайн?
Можете ли вы изменить условия, которые привели к проблемам? Если нет, вы можете столкнуться с теми же проблемами во второй попытке при восстановлении с нуля, а вторая версия может также иметь недостатки в дизайне.
Вы хорошо разбираетесь в коде, чтобы его реорганизовать?
У вас есть эксклюзивное время для рефакторинга? Если вам нужно это сделать, вы не сможете реорганизовать больше вещей
Насколько хороши ваши тесты? Они обнаружат новые ошибки, которые, вероятно, появятся во время рефакторинга?
Можете ли вы перестроить приложение без поддержки со стороны вашего клиента? Если нет, вы получите эту поддержку?
Можете ли вы оценить затраты на редизайн и рефакторинг? Можете ли вы это заплатить?
Ошибки также совершаются людьми, но мы стараемся учиться на этом.