Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!

while(a&(a+1)) a|=(a+1);
a++;Удобоваримый код — это прекрасно, но данную «вкусняшку» очень сложно реализовать в рыночных условиях труда, когда очень важно «урвать кусок рынка».Рыночный сектор вообще не может существовать без постоянной подпитки из нерыночного;-) На рынке надо писать сразу быстро и хорошо. Учиться и тренировать можно в общем только вне рынка;-)
Используйте только удачные конструкции, чтобы ваш пластилиновый ком в чистом проекте превращался в стальной каркас.Что мешает использовать «удачные конструкции» в прототипе? Он мал, не содержит лишнего, его легко модифицировать/рефакторить. Почему исправления должны делаться в другом проекте?
Меняются требования — тут же вносятся корректировки в архитектуру.
There’s Never Time to Do It Right, But There’s Always Time to Do It OverПервое — расплывчато, второе — легче обосновывается объективно наличествующей крайней необходимостью (с регулярностью граблей постоянно откуда-то возникающей, несмотря на то, что её теоретически не должно быть).
рефакторингом вы можете и в «Блокноте» заниматься :)… имея бесконечные временные ресурсы. И на работу за 7 километров тоже можно каждый день пешком ходить :). Но при наличии бесконечных временных ресурсов и рефакторинг и оптимизация вообще теряют смысл. Как раз наличие плюшек по части рефакторинга и автоформатирования и заставило меня перестать кодить на Java в FAR и пересесть на IDE. Как раз именно механизированный рефакторинг — «плюшки конкретных IDE» — дал возможность сначала писать программу, а потом улучшать дизайн, что привело к статьям на тему «дизайн умер как класс».
Почему нельзя превращать прототип в итоговую программу