Правила хорошего* кода
- 01комментируймногострочные комментарии использовать при отладке для быстрого комментирования больших частей кода, в остальных случаях - однострочные; не ленимся и побольше комментируем код, чтобы меньше напрягаться впоследствии.
- 02именуйПри процедурном программировании желательно использовать стандарт наименования переменных underscore (строчными латинскими буквами с нижним подчеркиванием вместо пробелов):
не забываем про короткие и осмысленные названия.Code:$rel_patch_termins; $new_var; $name_img etc.
- 03отступай и переносиПри собирании результата в переменную перенос строк ставить в конце строки, отступ - в начале:Code:
$res="$res\t\t\t<li>".numeration($key)." <a href='$link_".numeration($key)."'>$val</a></li>\n";
- 04да не наплоди сущностейпо возможности следует обходиться минимальным набором переменных; избавься от переменных сразу после того, как в них отпадёт надобность. убивай ,например, вспомогательные переменные еще на стадии написания:Code:
foreach($array as $key=>$val){ ... }unset($key,$val);
- 05кавычьдвойные кавычки ставятся в php, одинарные - в html и css:Code:
$tpm="<span class='tpm'>$tpm_</span>";
- 06при отладке выводи значения переменных в кавычкахпри проверке значения переменных в процессе отладки обязательно обрамляй значение переменной кавычками:
так легко заметить пустое значение.Code:echo __line__.": \$var='$var'<br>\n";
- 07служебные сообщенияпрописываем служебные сообщения в виде:Code:
echo __line__.": директория ".DIR_SRC_CATALOG." создана.<br>\n";
- 08каждому классу по файлукаждый класс храни в отдельно созданном для него файле. именуй этот файл именем класса
- 09отладочные сообщенияпрописываем отладочные сообщения в виде:Code:
if(OUTPUT_MESSAGES){echo "\t".__line__.": создание временного файла '$patch_new_file'.<br>\n";}
- 10помни созидающего, развлекающего и разрушающегоПри создании класса прежде всего обозначай пустые конструктор, клон и деструктор. Даже если они не нужны:
в дальнейшем, при добавлении чего либо в конструктор подумай, может стоит прописать это что-то и в клон?Code:class newClass{ public function __construct(){} public function __clone(){} public function __destruct(){} }
- 11разбивай адреса на части правильноПри присвоении константам и переменным значений относительных путей слэш адреса ставить вначале, а не в конце адреса:Code:
$full_patch_src="/public_html/my.domain/src";
тогда при объединении не произойдет казусов:Code:$rel_patch_termins="/tpl/termins";
Code:$full_patch=$full_patch_src.$rel_patch_termins; // "/public_html/my.domain/src/tpl/termins"
*правила хорошего кода от якава для якава