автодокументирование PHP проектов

Тема в разделе "PHP", создана пользователем chang, 25 май 2010.

Модераторы: latteo
  1. chang

    chang

    Регистр.:
    20 ноя 2009
    Сообщения:
    364
    Симпатии:
    117
    Здравствуйте
    ест проект написан на на ПХП с использованием ООП
    весь код продокументирован в стиле
    PHP:
    // в коде кометрирование слегка иное, с использованием  .. но форум почему-то их съедает 
        ////
         // общий комент/ описание / назначение ф-ции 
         //
         //@param string  $value  описание переменной 
         //@param integer $maxLength описание переменной 
         //@param integer $minLength [Optional]  описание переменной 
         //@return boolean TRUE  / FALSE  описание возвра. значения
         ///    
        
    public static function checkLength($value$maxLength$minLength 0){
    //  kod
    //  kod
    }
    нужно на выходе получить хотя-бы что-то похожее на то что в прилепленном архиве
    но было бы замечательно если прога построит иерархию класов с их полным наследованием ... отобразит все методы / переменые .... короче чтоб была максимально полная и небходимая инфа для быстрого ознакомления с проектом другим программистам
     

    Вложения:

  2. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    для того что бы в какой либо среде заработала подсветка своего кода с описание нужно писать в такой стиле
    Код:
    вотЪ
    
       /**
       * Изъятие переменной из массива GET при register_globals = Off
       * @param string имя переменной
       * @return mixed
       */
      function get($var) {
        if(is_array($var)):
          foreach($var as $column=>$value):
            isset($_GET[$column]) ? $var[$column]=$_GET[$column] : $var[$column]=null;
          endforeach;
          unset($column);
          unset($value);
        else:
          isset($_GET[$var]) ? $var=$_GET[$var] : $var=null;
        endif;
        return $var;
      }
    ЗЫ я пишу в NetBeanse, в нем можно создвать пустое описание а потом его заполнять как нужно
     
  3. madoks

    madoks Писатель

    Регистр.:
    9 май 2010
    Сообщения:
    10
    Симпатии:
    0
    Тема очень актуальная, если несложно - скиньте ссылочки кто чем пользуется...
     
  4. chang

    chang

    Регистр.:
    20 ноя 2009
    Сообщения:
    364
    Симпатии:
    117
    XSiteCMS не совсем понял о чем вы, но походу далеко не о том о чем я -)

    вот что нашел
    1) http://ru.wikipedia.org/wiki/Doxygen
    2) http://ru.wikipedia.org/wiki/PhpDocumentor
    второй можно установить через PEAR

    но не могу разобраться как построить хоть какие-то диаграммы классов :ac:
     
  5. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    я имел ввиду
    подобный пример привел выше, так есть модуль для NetBeanse который может делать что то подобное как вы просите, сам не пользовал за полной ненадобностью, тк я пользуюсь IDE и она прекрасно дает описание при написании кто где и как)
    вот пример как работает у меня в бинсе

    [​IMG]


    за пару минут поисков нашел вот

     
  6. chang

    chang

    Регистр.:
    20 ноя 2009
    Сообщения:
    364
    Симпатии:
    117
    нашел чудо софтину

    Sparx Systems Enterprise Architect Corporate Edition

    качнуть можно отсюда здесь ее походу даже периодически обновляют

    правда судя по коментам то в текущей 8 версии есть какие-то глюки вплоть до произвольного удаления кода ...

    софтина умеет по исходным кодам генерить UML диаграммы и наоборот , правда они слегка стремные
    + возможен взаимный контроль т.е. когда делаются правки в UML их можно на автомате сделать и в коде ... ну и наоборот

    на данный момент ничего лучшего и мощнее на глаза не попадалось
     
  7. PHPCod3r

    PHPCod3r

    Регистр.:
    7 июн 2010
    Сообщения:
    261
    Симпатии:
    25
    В самом пхп, есть неплохая фича

    http://read-php.ru/sredstva-dlya-ra...terfejs-reflection-api-osnovnye-svedeniya.php