This is an old revision of the document!
Руководство разработчика команды «KAD :: Systems»
Добро пожаловать в нашу команду!
Мы занимаемся разработкой сайтов на системе управления HostCMS 6.x, а также их доработкой и технической поддержкой. Все взаимодействия мы производим внутри нашей системы для работы с клиентами, которая показала себя очень эффективно. Данная система носит название «KAD :: Outsource». Она является основным инструментом для связи всех участников процесса разработки. Регулярно мы обновляем её и дорабатываем новый функционал.
Данное руководство состоит из двух разделов. Первый из них – это правила и стандарты, принятые в нашей команде. Второй – практические советы и рекомендации.
Правила и стандарты
Независимо от уровня профессионализма или отличительных особенностей синтаксиса, очень просто написать неряшливый или малопонятный код. Трудный для чтения код сложен в обслуживании и отладке. Скверный стиль кодирования ассоциируется с недостатком профессионализма.
В нашей команде мы используем единый стиль программирования. Помимо удобочитаемости такого кода, красивый код говорит о нашем профессионализме. Если вы ставите над кодом копирайты, то есть подписываетесь именем нашей команды, то ваш код должен быть на уровне. Иначе вы ставите под угрозу репутацию самой команды и каждого из её участников.
Основные правила оформления кода:
Правильное именование переменных и функций.
Имена глобальных переменных и констант должны вводиться в верхнем регистре
Префикс переменной определяет её тип. Для переменной типа string следует использовать префикс «s», например $sInput. Для bool – «b». Для объектов – это «o», например, $oBook, для массива - «a». При этом, если у нас есть массив с данными одного типа, то помимо префикса массива, нужно указывать еще и тип элементов массива, например, $aoBooks. Кстати, предусмотрен префикс и для смешанных типов mixed – «m».
Переменные, определенные в классе, как private всегда носят префикс «_», например, $_oController
Временные переменные и итераторы следует называть коротко. Например, i, j, k, l, m, n. Для строковых и числовых временных переменных рационально использование названий без префикса, например $name, $pass, $counter.
Переменные, использующие несколько слов в названии, пишутся слитно, без знака «_». Например, $oBookComment. Но если речь идет о константе или глобальной переменной, то здесь целесообразно использование знака «_». Например, $CACHE_DIR.
Для имен методов и функций следует применять те же правила, что и для переменных. Начинаться имена методов и функций должны с символов в нижнем регистре.
При создании модели объекта с неопределенной выборкой, например, $oShopItems = Core_Entity::factory(‘shop_item’) имя переменной должно быть во множественном числе с содержанием префикса o - object. При уточнении выборки и получении массива объектов $aoShopItems = $oShopItems→findAll() префикс должен быть ao - array of objects. При создании модели конкретного объекта имя переменной должно быть в единственном числе, например, $oShopItem = Core_Entity::factory(‘shop_item’, 25).