Сравнение генераторов документации
В следующих таблицах сравниваются общие и технические сведения для ряда генераторов документации . Дополнительную информацию см. в статьях по отдельным продуктам. Если иное не указано в сносках, сравнение основано на стабильных версиях без каких-либо надстроек, расширений или внешних программ. Обратите внимание, что многие из перечисленных генераторов больше не обслуживаются.
Общая информация [ править ]
Основная общая информация о генераторах, включая: создателя или компанию, лицензию и цену.
Имя | Создатель | Формат ввода | Языки (порядок алфавита) | Поддержка ОС | Дата первого публичного релиза | Последняя стабильная версия | Лицензия на программное обеспечение |
---|---|---|---|---|---|---|---|
Док | Уолтер Брайт | Текст | Д | Windows, OS X, Linux и BSD | 2005/09/19 | ДМД 2.078.3 | Повышение (с открытым исходным кодом) |
Документ! Х | Инновасис | Текст, Двоичный | Только C++/CLI, C#, IDL, Java, VB, VBScript, PL/SQL | только для Windows | 1998 | 2014.1 | Собственный |
Доксиген | Дмитрий ван Хиш | Текст | C/C++, C#, D, IDL, Фортран, Java, PHP, Python | Любой | 1997/10/26 | 1.9.1 | лицензия GPL |
Эпидок | Эдвард Уокер | Текст | Питон | Любой | 2002/01/— | 3.0 (2008) | С |
fpdoc (бесплатный генератор документации Pascal) | Себастьян Гюнтер и Free Pascal Core | Текст | (Объект)Паскаль/Делфи | Цели FPC уровня 1 | 2005 | 3.2.2 | Части многократного использования GPL являются лицензией GPL с исключением статического связывания. |
Пикша | Саймон Марлоу | Текст | Хаскелл | Любой | 2002 | 2.15.0 (2014) | БСД |
ЗаголовокДок | Apple Инк. | Текст | AppleScript, Bash, Csh, C, C++, Delphi, IDL, Java, JavaScript, MIG, Pascal, Perl, PHP, Python, Ruby, Tcl | Любой Unix-подобный | 2000/09/— | 8.9.28 (2013) | АПСЛ |
Имагикс 4D | Компания Imagix. | Текст | С, С++, Ява | Винда, Линукс, Юникс | 1995 | 7.3 | Собственный |
Javadoc | Сан Микросистемс | Текст | Ява | Любой | 1995 | 1.6 | лицензия GPL |
JSDoc | Майкл Мэтьюз | Текст | JavaScript | Любой | 2001/07/— | 1.10.2 | лицензия GPL |
Набор инструментов JsDoc | Майкл Мэтьюз | Текст | JavaScript | Любой | 2007? | 2.0.0 | С |
МКД | Жан-Поль Луйо | Текст | Любой с комментариями | Юникс, Линукс, Винда | 1989 | 2015 | Лицензионное соглашение EUPL GPL |
МкДокс | Том Кристи | Текст | Питон | Любой | 2014/10/29 | 1.5.3 | БСД |
Природные документы | Грег Вэлью | Текст | Любой с комментариями | Любой | 2003/05/26 | 2.0.2 | лицензия GPL |
НДок | Джейсон Даймонд, Жан-Клод Маноли, Крал Ферч | Двоичный | С# | только для Windows | 2003/07/27 | 1.3.1 | лицензия GPL |
документ | Эндрю Галлант | Текст | Питон | Любой | 2013 | 1.0.1 (2021) | Без лицензии (PD) |
перлдок | Ларри Уолл | Текст | Перл | Любой | 1994 | 5.16.3 | Художественный , GPL |
phpДокументор | Джошуа Эйхорн | Текст | PHP | Любой | 2000 | 3.0.0 | LGPL для 1.x, MIT для 2+ |
пидок | Ка-Пин Йи [1] | Текст | Питон | Любой | 2000 | в ядре Python | Питон |
РДок | Дэйв Томас | Текст | С, С++, Руби | Любой | 2001/12/14 | в ядре Ruby | Руби |
РОБОДок | Франс Слотубер | Текст | Любой с комментариями | Любой | 1995/01/19 | 4.99.36 (2015) | лицензия GPL |
Замок из песка | Майкрософт | Текст | .СЕТЬ | только для Windows | 2008/05/— | 2.4.10520 (2016) | Мс-ПЛ |
Сфинкс | Георг Брандл | Текст | Ада, C, C++, Фортран, JavaScript, PHP, Python, Ruby | Любой | 2008/03/21 | 3.5.4 | БСД |
Визуальный эксперт | Новалис | Текст, Двоичный | C#, PL/SQL, Transact-SQL, PowerBuilder | только для Windows | 1995 | 2017 | Собственный |
ВСдокман | Хеликсофт | Текст | VB, VBScript, C# | только для Windows | 2003 г., 2 октября | 9.0 | Собственный |
ПЛОЩАДКА | Лорен Сигал | Текст | Руби | Любой | 2007/02/24 | 0.7.3 | С |
Имя | Создатель | Формат ввода | Языки (порядок алфавита) | Поддержка ОС | Дата первого публичного релиза | Последняя стабильная версия | Лицензия на программное обеспечение |
Поддерживаемые форматы [ править ]
Выходные форматы, которые могут записывать генераторы.
HTML | ЧМ | РТФ | Латекс | Постскриптум | страницы руководства | Документ | XML | ePub | ||
---|---|---|---|---|---|---|---|---|---|---|
Док | Да | Да [а] | Нет | Да [а] | Да [а] | Да [а] | Да [а] | Нет | Да [а] | |
Документ! Х | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
Доксиген | Да | Да | Да | Косвенно [б] | Да | Косвенно [б] | Да | Да | Да | Нет |
Эпидок | Да | Нет | Нет | Да | Косвенно [с] | Косвенно [с] | Нет | Нет | Нет | |
fpdoc | Да | Родной | Да | Косвенно [с] | Косвенно [с] | Да | Нет | Нет | Нет | Нет |
Пикша | Да | Да | Нет | Нет | Нет | Нет | Нет | Частичный | Нет | |
ЗаголовокДок | Да | Нет | Нет | Нет | Нет | Нет | Да | Нет | Да | |
Имагикс 4D | Да | Нет | Да | Нет | Нет | Нет | Нет | Нет | Нет | |
Javadoc | Да | Косвенно [д] | Косвенно [д] | Косвенно [д] | Косвенно [д] | Косвенно [д] | Косвенно [д] | Косвенно [д] | Косвенно [д] | |
JSDoc | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
Набор инструментов JsDoc | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Да+JSON | |
МкДокс | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
Природные документы | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
НДок | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
документ | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
phpДокументор | Да | Да (только 1.x) | Нет | Да (только 1.x) | Нет | Нет | Нет | Да (только 1.x) | Да (только 1.x) | |
пидок | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
РДок | Да | Да [и] | Нет | Нет | Нет | Нет | Косвенно [ф] | Нет | Да [и] | |
РОБОДок | Да | Косвенно | Да | Косвенно [с] | Да | Косвенно [с] | Да | Да | Нет | |
Замок из песка | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
Сфинкс | Да | Да | Косвенно [г] | Да | Да | Да | ||||
Визуальный эксперт | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
ВСдокман | Да | Да | Нет | Да | Нет | Нет | Нет | Нет | Да | |
ПЛОЩАДКА | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
HTML | ЧМ | РТФ | Латекс | Постскриптум | страницы руководства | Документ | XML | ePub |
Другие особенности [ править ]
возможность расширенной настройки | сгенерированные диаграммы | выделение и связывание сгенерированного документа | извлеченные типы параметров | |
---|---|---|---|---|
Док | с макросами | |||
Документ! Х | настраиваемые шаблоны на основе HTML, пользовательские теги комментариев | диаграммы взаимосвязей связанных графических объектов | внутренние ссылки и ссылки на документацию .NET Framework | типы извлечены и связаны |
Доксиген | с XSLT | графы вызывающих и вызываемых объектов, графы зависимостей, диаграммы наследования, диаграммы сотрудничества | ||
Эпидок | ||||
Пикша | Да | Да | ||
ЗаголовокДок | Настраиваемые верхние и нижние колонтитулы, цвет кода и другие стили CSS на отдельных страницах. Оглавление для всего проекта создается на основе определяемого пользователем шаблона. | Настраиваемая подсветка/цвет синтаксиса с автоматической ссылкой на символы в объявлении, возможность вручную ссылаться на символы в обсуждении и т. д. | Выдает предупреждения, если помеченные параметры не соответствуют коду, анализируемые параметры включены в выходные данные XML и файл тегов в стиле Doxygen (флаг -D в версии 8.7). Частичная поддержка препроцессора C с флагом -p. Поддержка #if/#ifdef контроля над включением документации с использованием флагов командной строки -D и -U. | |
Имагикс 4D | настраивается с помощью таблиц стилей и CSS | связанные иерархии и графики зависимостей для вызовов функций, наборов переменных и чтения, наследования классов и интерфейса, а также включения файлов и интерфейса, блок-схемы внутри функций | полностью перекрестные связи по всему проекту, включая все графики иерархии и зависимостей, таблицы показателей, фрагменты исходного кода и исходные файлы. | полный семантический анализ исходного кода, включая типы параметров, директивы условной компиляции, расширения макросов |
Javadoc | ||||
JSDoc | Да | |||
Набор инструментов JsDoc | Да | |||
МКД | Настраивается для всех типов комментариев | «как есть» в комментариях | вся общая документация; ссылки, руководства, органиграммы... Включая двоичные коды, включенные в комментарии. | все закодированные комментарии |
МкДокс | ||||
Природные документы | ||||
НДок | ||||
перлдок | Расширьте классы генераторов с помощью программирования на Perl. | Только связывание | ||
документ | переопределяемые шаблоны Jinja2 | подсветка синтаксиса исходного кода, автоматическое перекрестное связывание с объявлениями символов | Да | |
phpДокументор | Шаблоны на основе Smarty (1.x), шаблоны на основе Twig (2+) | диаграммы наследования классов | перекрестная ссылка на сгенерированную документацию и ссылку на функцию php.net | Да |
пидок | ||||
РДок | ||||
РОБОДок | ||||
Сфинкс | 10 тем; Шаблоны Jinja2; Плагины Python | несколько в sphinx-contrib, например, с использованием aafigure, actdiag, Google Chart или gnuplot | Оглавление, Указатель; перекрестные ссылки; подсветка синтаксиса с помощью Pygments | пользовательские объекты (такие как функции и классы) |
Визуальный эксперт | содержимое документации и стили настраиваемые | Наследование классов, деревья вызовов, зависимости (анализ воздействия) | внутренние связи между классами, методами, переменными, таблицами, столбцами... | все типы извлечены |
ВСдокман | полная настройка для всех форматов вывода, шаблоны для вывода в стиле MSDN, пользовательские теги комментариев XML | связанные графические диаграммы классов, дерево наследования классов | внутренние ссылки и ссылки на документацию .NET Framework | типы извлечены и связаны |
ПЛОЩАДКА | настраиваемые шаблоны Ruby | диаграммы классов с дополнительным инструментом | внутренние классы/модули имеют перекрестные ссылки и выделен источник Ruby |
См. также [ править ]
Примечания [ править ]
- ^ Jump up to: Перейти обратно: а б с д и ж Ddoc имеет систему макросов, которую можно настроить для вывода в любом желаемом формате. Были протестированы CHM, groff (справочные страницы), XHTML, XML и LaTeX (то есть PostScript и PDF). На данный момент они не включены в стандартный дистрибутив. Стандартный вывод HTML также генерируется с использованием макросов и может быть переопределен.
- ^ Jump up to: Перейти обратно: а б Генерируется только на основе вывода LaTeX. [2]
- ^ Jump up to: Перейти обратно: а б с д и ж Хотя Epydoc официально не поддерживается в качестве выходного формата, он использует LaTeX и PostScript в качестве промежуточных шагов для создания окончательной документации в формате PDF.
- ^ Jump up to: Перейти обратно: а б с д и ж г час Через доклеты третьих лиц.
- ^ Jump up to: Перейти обратно: а б В настоящее время RDoc предоставляет генераторы для документов CHM и XML только в версии RDoc, поставляемой как часть Ruby 1.9 Core.
- ^ RDoc генерирует документацию для RI , которая представляет собой Ruby-версию справочных страниц Unix.
- ^ Создано только на основе выходных данных LaTeX.
Ссылки [ править ]
- ^ «PEP 256 — Структура системы обработки строк документации | Python.org» .
- ^ «Руководство по Doxygen: Форматы вывода» . Архивировано из оригинала 6 января 2013 г.