Friday, December 3, 2010

Совершенный код 2

Дочитал наконец Code Complete 2 - наиболее влиятельную книгу для программистов по версии SO. В целом понравилось: много полезной информации и относительно неплохой русский перевод.

Далее несколько мыслей из книги.

Принципы программирования не зависят от синтаксиса конкретного языка. Понимание этого приходит после освоения более одного языка программирования.


Невозможно создать общий набор директив, точно определяющих способ решения проблем программирования, поскольку с концептуальной точки зрения каждая программа уникальна. Знание общего подхода к проблемам не менее, а то и более ценно, чем знание точных решений конкретных проблем.


Если вы хотите разрабатывать высококачественное ПО, внимание к качеству должно быть частью процесса разработки ПО с начала до конца. Внимание к качеству в начале процесса оказывает наибольшее влияние на итоговое качество приложения.


Качество архитектуры определяет концептуальную целостность системы, которая в свою очередь определяет итоговое качество системы.


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


Программные проекты редко терпят крах по техническим причинам. Чаще всего провал объясняется неадекватной выработкой требований, неудачным планированием или неэффективным управлением.


В большинстве случаев преждевременная оптимизация представляет серьезную угрозу для общего качества ПО, включая производительность.


Главная цель хорошего форматирования - привести в соответствие визуальную и логическую структуру кода.


P.S. Уже заказал себе оригинал на английском :)