Автор статьи: alexvolkov
Даже если Вы работаете над проектом в глубоком одиночестве, вероятность того, что Вам больше никогда не придется возвращаться к нему позже, мала. А вот вероятность того, что Вы не сможете быстро вспомнить «что там к чему» велика. используя советы, изложенный в этой статье, Вы сможете приобщиться к тому, что называется «высокая культура программирования» и сэкономить много времени не только себе, но и своим коллегам. Данная статья является переводом статьи «Php coding standart» Фредерика Кристьяна и несколько дополнена на основе собственного опыта, статьи «с++ coding standart» Тода Хоффа, и рекомендация Zend для программирования Pear.
Кроме того — мы пишем именно о coding. Т.е. о том, как писать код на php, а не о том, что писать. Мы не будем обсуждать алгоритмы, но много внимания посвятим тому, как записать эти алгоритмы
>
Введение
Стандартизация важна
Поверьте — мы все играем в одни ворота. Данные материал написан на основе опыта работы со множеством проектов, опыта множества компании и массы затраченного времени. Это не описание личного стиля программирования автора.
Плюсы
Когда проект пробуют привести к тем или иным стандартам, то происходит ряд хороших вещей:
- Программисты могут работать с любым кодом и легко понимать о чем идет речь
- Новый человек в проекте значительно быстрее может приступить к программированию
- Новички в php экономят время на то, чтобы разработать свой личный новый шикарный стиль программирования и похоронить его в будущем.
- Новички в php делают одни и те же ошибки раз за разом
- Программисты объединяются в борьбе с единым врагом — автором стандарта
- Менеджера проекта точно не уволят, потому что у него появится возможность писать красивые отчеты о внедрении ПО
Правда есть и плохие аспекты:
- Стандарты, как правило, разрабатываются тем, кто не умеет программировать
- Стандарты, как правило, разрабатываются тем, кто не умеет программировать на php
- Стандарты, как правило, разрабатываются прямо противоположно тому, как Вы привыкли программировать.
- Стандарты ограничивают свободу
- Стандарты не нужны, потому что все равно программисты народ упертый
- На стандарты все равно всем наплевать
Соображения
Опыт большинства проектов показывается, что использование стандартов кодинга приводит к тому, что проекты становятся более вылизанными и гибкими. Нужны ли стандарты для того, чтобы добиться успеха? Конечно нет. Но они помогаю в этом, а на пути к успеху глупо отказываться от помощи, которую предлагают. Правда говоря, большинство аргументов за использование отдельных стандартов весьма и весьма продуманы.
Некоторые заключения в основательности стандартов могут быть технически недостаточными, просто на ваш вкус. Но будьте гибки, контролируйте собственное эго и помните, что проект основывается в первую очередь на работу всей команды.
Терминология
Если мы использует термин «должны», это означает, что все проекты просто обязаны использовать это правило.
Если мы употребляем «можете» или «стоит», это означает, что Вы вполне можете не следовать этому стандарту в своем проекте. Это может быть в том случае, когда стандарт дает относительное удобство или же является очень проект-специфичным
использование
Во-первых, любое серьезное о внедрении стандартов должно быть пронесены через рабочую группу. Возможно, стандарты не будут полностью подходить для вашей конкретной ситуации. В результате Вы можете упустить из виду какое-то важное замечание или же кто-то из руководства просто упрется перед каким-то из правил 🙂
В любом случае, только опытные и серьезные люди могут играть по взрослым «правилам» и понимать, что стандарты просто необходимы и в них заложено масса оснований самых различных программистов, и то, что Вы до сих пор следовали только своему опыту очень и очень плохо.
Отказ от использования стандартов выгоден только ленивой части команды, которые не заинтересованы в результате и хотят только чтобы их меньше трогали не совались в их работу
Стадии принятия идеи
- Это не возможно
- Может быть это и возможно, но примитивно и неинтересно
- Это правильно и я бы сказал бы все точно также
- Вообще-то это я первый придумал
- Разве может быть иначе?
Если Вы приступаете к изучению этого документа с некоторым скептисом или негативизмом. Вы можете до сих пор писать проекты по старинке, но ведь существует и другой опыт. Позвольте себе просто прочитать все это до конца.