Уже 3 года я время от времени что то пишу на PHP, периодически вижу сторонний код.
Везде разный стиль, да и мой стиль периодически меняется в какой то степени.
Есть ли какой нибудь стандарт? Общепринятый стиль программирования, если нет, давайте составим =)
Дело в том что я пишу движок, сейчас дело близится к документации и надеюсь в ближайший год появятся разработчики, готовые писать расширения для движка.
Так как стиль у всех разный, хотелось бы выявить более популярный стиль оформления кода и в документации описать данный стандарт, что бы один разработчик не плевался на код другого.
Во первых фигурные скобки
#Мне ближе такое оформление
if($a == $b) {
echo 'Привет';
} else {
echo 'Пока';
}
#Чем такое (сложно читаемо для меня)
if($a == $a)
{
echo 'Привет';
}
else
{
echo 'Пока';
}
Комментарии
есть 3 вида комментов
1) /**/
2) ###
3) //
Иногда читая чей то код, хочется достать огнемет и сжечь всё =)
Код может быть супер-пупер, но комменты всё портят.
К чему я привык.
1) Комменты /**/ использую для шапки файла, к примеру так
<?php
/*-------------------------------------
Какое нибудь название
---------------------------------------
* Кто разработчик и год
* что за файл и т.д.
* ссылка на сайт
--------------------------------------*/
2) Решетку # использую для описания блоков кода, например
<?php
class blabla {
#Метод выводящий слово Тест
function test () {
echo 'Тест';
}
}
#Определение переменных
$Test = new test;
$a = 1;
$b = 2;
#Обработка результатов из базы
$query = $db->query('SELECT');
while ($row = $query->fetch()) {
}
3) Коммент 2 слеша // использую для описания переменной например, или пометок или комментирования строчки кода
<?php
$Time = microtime(true); //Для подсчета времени
#Например так
$db = array (
'host' => 'localhost', //Адрес базы
'name' => 'dbname', //Имя базы
'user' => 'username', //Имя пользователя
);
#Или может так
//echo round(microtime(true) - $Time,4).'-секунд'; //Скорость выполнения скрипта
Теперь название переменных
Кто то пишет слитно, кто то через нижнее подчеркивание, с этим я честно сказать еще не определился.
С одной стороны, хочется писать с большой буквы, просто по правилам русского языка (Начала предложения с большой буквы) как тут
$Time = microtime(true); //Для подсчета времени
С другой стороны, переменные используемые в коде, смотрятся не красиво с большой буквы типа так
while ($Row = $Query->fetch()) {
}
Последнее время склоняюсь к такому стилю, что бы писать переменные и свойства с маленькой буквы, слитно, а второе слово с большой буквы, но пока хз.
#Вот так
$obj = new test;
$userName = $obj->userName;
#А это для сравнения
$Obj = new test;
$User_name = $Obj->User_Name;
Имена функций и методов
Тут тот же вопрос, что и с переменными, но так как в PHP функции пишутся через подчеркивание, я думаю такого стиля и придерживаться
<?php
class blabla {
function test_one () {
}
function add_test () {
}
}
Не флейм, просто пора уже определится :)
_____________
Промокод предоставляет скидку на заказ домена и/или хостинга reg.ru
BFCC-3895-8804-9ED2