Doxygen — кроссплатформенная система документирования исходных текстов, которая поддерживает C++, Си, Objective-C, Python, Java, IDL, PHP, C#, Фортран, VHDL и, частично, D.
Doxygen генерирует документацию на основе набора исходных текстов и также может быть настроен для извлечения структуры программы из недокументированных исходных кодов. Возможно составление графов зависимостей программных объектов, диаграмм классов и исходных кодов с гиперссылками.
Doxygen имеет встроенную поддержку генерации документации в формате HTML, LAΤΕΧ, man, RTF и XML. Также вывод может быть легко сконвертирован в CHM, PostScript, PDF.
Для html-представления документации, размещаемого на веб-серверах, существует удобный способ организации поиска (при помощи создаваемого Doxygen’ом PHP-модуля) и ссылок на внешнюю документацию.
Doxygen используется многими проектами, в том числе KDE, Pidgin, Torque Game Engine, AbiWord, Mozilla, FOX toolkit, Crystal Space, Drupal. Есть встроенная поддержка в KDevelop.
Doxygen — консольная программа в духе классической Unix. Она работает подобно компилятору, анализируя исходные тексты и создавая документацию. Параметры создания документации читаются из конфигурационного файла, имеющего простой текстовый формат.
Для упрощения манипуляций с конфигурационным файлом (а он содержит довольно много настроек), существует несколько утилит с графическим интерфейсом. Одна из них, doxywizard, поставляется вместе с Doxygen. Ранее она была реализована с использованием Qt версии 3 и имела не очень удобный интерфейс. В качестве альтернативы летом 2008 года вышла альтернативная графическая оболочка Doxygate (http://sourceforge.net/projects/doxygate), которая основана на Qt версии 4. Но вскоре doxywizard был переписан на Qt версии 4 и проект Doxygate был закрыт (см. страницу проекта на sourceforge.net).
История создания
Автором программы является голландец Димитри ван Хееш (Dimitri van Heesch). Во время работы в Quasar Technologies (впоследствии Trolltech и Qt Software) он занимался созданием системы документирования исходного кода для программистов — qDoc. Данная система была написана на интерпретируемых языках. После ухода из Trolltech основал собственный проект — Doxygen, написанный уже на C++ и учитывающий недочёты qDoc. На сегодняшний день Doxygen поддерживает несколько меток (ключей) системы qDoc для совместимости.
Литература
Ссылки
См. также
Примечания