yakoffka.ru
    грабли, костыли и велосипеды php, css, html, js и прочего

    Правила хорошего* кода

    • 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"
    *правила хорошего кода от якава для якава