This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
rukovodstvo:rukovodstvo_razrabotchika [07.05.15 в 15:33] maslov [Правила оформления кода] |
— (current) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Руководство разработчика команды «KAD :: Systems» ====== | + | |
- | Добро пожаловать в нашу команду! | + | |
- | Мы занимаемся разработкой сайтов на системе управления HostCMS 6.x, а также их доработкой и технической поддержкой. Все взаимодействия мы производим внутри нашей системы для работы с клиентами, которая показала себя очень эффективно. Данная система носит название «KAD :: Outsource». Она является основным инструментом для связи всех участников процесса разработки. Регулярно мы обновляем её и дорабатываем новый функционал. | + | |
- | Данное руководство состоит из двух разделов. Первый из них – это правила и стандарты, принятые в нашей команде. Второй – практические советы и рекомендации. | + | |
- | ===== Правила и стандарты ===== | + | |
- | ==== Правила оформления кода ==== | + | |
- | Независимо от уровня профессионализма или отличительных особенностей синтаксиса, очень просто написать неряшливый или малопонятный код. Трудный для чтения код сложен в обслуживании и отладке. Скверный стиль кодирования ассоциируется с недостатком профессионализма.\\ | + | |
- | В нашей команде мы используем единый стиль программирования. Помимо удобочитаемости такого кода, красивый код говорит о нашем профессионализме. Если вы ставите над кодом копирайты, то есть подписываетесь именем нашей команды, то ваш код должен быть на уровне. Иначе вы ставите под угрозу репутацию самой команды и каждого из её участников. | + | |
- | Основные правила оформления кода:\\ | + | |
- | - Правильное именование переменных и функций. | + | |
- | * Имена глобальных переменных и констант должны вводиться в верхнем регистре | + | |
- | * Префикс переменной определяет её тип. Для переменной типа string следует использовать префикс «s», например <php>$sInput</php>. Для bool – «b». Для объектов – это «o», например, <php>$oBook</php>, для массива - «a». При этом, если у нас есть массив с данными одного типа, то помимо префикса массива, нужно указывать еще и тип элементов массива, например, <php>$aoBooks</php>. Кстати, предусмотрен префикс и для смешанных типов mixed – «m». | + | |
- | * Переменные, определенные в классе, как private всегда носят префикс «_», например, <php>$_oController</php> | + | |
- | * Временные переменные и итераторы следует называть коротко. Например, i, j, k, l, m, n. Для строковых и числовых временных переменных рационально использование названий без префикса, например <php>$name, $pass, $counter</php>. | + | |
- | * Переменные, использующие несколько слов в названии, пишутся слитно, без знака «_». Например, <php>$oBookComment</php>. Но если речь идет о константе или глобальной переменной, то здесь целесообразно использование знака «_». Например, <php>$CACHE_DIR</php>. | + | |
- | * Для имен методов и функций следует применять те же правила, что и для переменных. Начинаться имена методов и функций должны с символов в нижнем регистре. | + | |
- | * При создании модели объекта с неопределенной выборкой, например, <php>$oShopItems = Core_Entity::factory(‘shop_item’)</php> имя переменной должно быть во множественном числе с содержанием префикса o - object. При уточнении выборки и получении массива объектов <php>$aoShopItems = $oShopItems->findAll()</php> префикс должен быть ao - array of objects. При создании модели конкретного объекта имя переменной должно быть в единственном числе, например, <php>$oShopItem = Core_Entity::factory(‘shop_item’, 25)</php>. | + |