У меня (не так уж и редко), я считаю, исправление ума при разработке собственных решений в нерабочее время;
Достигнув определенной точки в любом проекте, я начинаю считать, что он "плохо пахнет", предпринимает несколько попыток рефакторинга, затем выбрасывает его и начинает заново, мотивируя это плохим дизайном в ядре.
Это довольно быстро расширяет мои познания в области проектирования и позволяет мне учиться на прошлых ошибках, чтобы строить еще лучшие решения в следующих сериях; Это также имеет один существенный недостаток: я не могу завершить ни один из проектов, и некоторые из них проходят в 4-5 раз больше итераций переписывания. Для учебных проектов это совершенно нормально - я узнаю, почему данные шаблоны хороши или нет; но что-то, что я хочу в конечном счете выпустить, это исправление ума - кошмар, чтобы преодолеть.
Я пытался:
- Проверьте качество другого проекта OSS, который имеет аналогичную сферу, так что я могу убедить себя, что «все остальное на рынке тоже не идеально»
- Учитесь на ошибках других компаний, которые ведут такой бизнес (кто-нибудь помнит переписывание Netscape? Или лучший пример: Duke Nukem Forever, написанный 3-4 раза, прежде чем окончательно обернуться катастрофой ...)
Я до сих пор не могу отказаться от этого умственного "гипер-перфекционистского" умственного решения, когда оно действительно имеет значение для меня. Любой совет по этому поводу?