"иногда неважно, в какой степени правильным является подход, оказывается, что в большинстве случаев более эффективно придерживаться пусть и менее правильного, зато единообразного и продуманного подхода, чем в постоянном ожидании более правильного не придерживаться никакого вообще..."
эмпирически подтвержденная
собственная точка зрения автора
От автора.
Каждый раз, когда я открываю у себя на компьютере этот документ, у меня возникает желание его доработать. Обычно доработки проявляются в виде расширения уже написанного, внесения исправлений ошибок и уточнения неоднозначности. Бывает, что приходится выбирать чуть ли не наугад один из нескольких возможных вариантов написания кода только ради того, чтобы был "стандарт". Именно поэтому этот документ имеет номер версии и дату последней ревизии. Возможно, и публиковать его следует периодически.
Иногда ловлю себя на мысли, что подобную доработку можно продолжать еще очень долго, и нет гарантии, что по истечении этого продолжительного времени документ будет совершенен. Поэтому я вполне резонно ожидаю, что у подобного документа есть (и, пожалуй, будут всегда) недостатки. Можно высказать как предложения по его расширению, так и оспорить уже изложенные мысли. В любом случае я буду признателен за отклики читателей.
В принципе, объем возможных доработок для себя я вижу настолько объемным, что готов развить этот материал в целую книгу, куда можно включить и анализ плохо написанного кода, и элементы экстремального программирования, и управление совместной работой в системе контроля версий. Однако все это требует больших затрат времени, возможно в будущем оно у меня появится.
Так получилось, что первоначально этот документ компоновался в сжатые сроки из различных источников, потом прошел множество доработок, в результате которых уже очень тяжело выявить первоначальные источники тех или иных мыслей. Список (не полный) использованных источников приведен в конце документа, однако если кто-либо узнает свои мысли, и обоснованно потребует внесения своего труда в этот список, то я это сделаю безоговорочно и незамедлительно.
Соблюдение данных стандартов обязательно для всех сотрудников компании-разработчика, занятых в реализации одного проекта, и в равной степени призвано решать, как минимум, три задачи, направленных на повышение эффективности программирования (каковой можно считать сокращение сроков разработки, снижение количества ошибок, упрощение возможности повторной доработки участков кода, снижение трудоемкости поиска и устранения ошибок и т.д.):
во-первых, соблюдение данных правил позволяет сделать код унифицированным, облегчить его чтение и восприятие всеми членами команды разработчиков, повысить прозрачность кода, легкость его восприятия на различных этапах работы над проектом;
во-вторых, соблюдение данных правил ориентировано на поддержку так называемого "защищенного программирования", направленного на создание программ таким образом, чтобы изначально при написании кода заложить механизмы простого его расширения, поиска различного вида ошибок, отладки и трассировки, и, в первую очередь, первоначального кодирования с минимальным количеством допускаемых ошибок;
в-третьих, соблюдение данных правил ориентирует на написание компактного и оптимального программного кода, который быстро и эффективно исполняется, расходуя минимальное количество системных ресурсов.