В ответ на: ... В большом проекте, ..., физически невозможно по времени всё переписать идеально. Человек, который видел гору, никогда уже не будет бить себя пяткой в грудь и кричать, какой он молодец, что по-быстрому распарсил прайс-лист.
Ну насчет пятки в грудь... я так понимаю, Вам особо гордиться нечем, раз помалкиваете.... "большие проекты"... может и участвовали, только похоже лучше не вспоминать...:миг:
А зачем писать так, чтобы физически не было времени "переписывать", не подскажете? Сразу нельзя по-людски делать, религия не позволяет? Вроде как как раз для таких случаев и функциональное программирование есть и модульное и даже ООП приладить можно, ежели с головой подходить... или нет?

Как пример, из одного ну очень большого проекта: есть диалог по проверке и правке данных, "всосанных" из Экселя... простенько и незамысловато... зашел админ, посмотрел выданный список, где надо поправил и сохранил... возникает "развитие": надо дабы владелец этого Экселя тоже апосля заливки мог чего поправить... перед админом... и? Опаньки! возникает новый диалог - практически дубликат первого... дальше больше... вот уже и проект "большим стал"...

Не узнаете? А собака в чем "порылась"? В лени и любимом "копи-пасте" (I like to move it move it)...

А сделай сразу по-людски и вместо нового диалога можно предоставить часть прав на старый... и "физически перписывать правильно" нечего.

Критерии то просты "как три рубля":

Если код повторяется "почти" - то это функция с параметрами... если есть одинаковый по сути, но разный по содержанию набор действий - то надо делать классы с наследованием от интерфейса...

а в основе лежит малюсенькая книжка Касьянова "Оптимизационные преобразования программ"... только много ли в Новосибе прогеров кто всю математику в ентой книжке осилил? Куда как проще отговариваться: "в наше время память экономить не надо" или "это не вписывается в принятый шаблон проектирования" или ишо как... только нафига он такой шаблон нужен? Бабки из лохов за апдейт брать, как в примере выше... а ведь это даже апдейтом назвать-то можно с натягом!

а есть ещё много книжек, полезных и разных... мне вот Дейкстра очень нравится, с его доказательствами "плохих программ"...:миг:

"Только так, только личная инициатива и напряженная работа над собой. .. Нужно своей собственной рукой все делать" (с) В.В. Путин:улыб:(а не на "вертикаль власти" надеяться)