У всех нас есть хорошая привычка документировать наш код, не так ли?
В настоящее время сама документация в коде имеет синтаксис. Это почти как язык программирования на себе. Вопросы:
- Что (сколько) спецификаций синтаксиса документации существует?
- Есть ли стандартный синтаксис документации?
- Кто определяет этот стандарт? Есть ли официальный комитет или орган (например, есть один для определения стандартов на C++)?
- Или "doxygen" стал стандартом де-факто?
Сложно не слышать о доксигене. Он упоминается в каждом проекте с открытым исходным кодом, в котором я принял участие. Однако, глядя на официальный веб-сайт doxygen, , далеко не очевидно, что doxygen определяет любую спецификацию!. когда я читаю "способы, которыми это может мне помочь", заключается в том, что doxygen - это просто программное обеспечение для извлечения документации в коде и представление его в красивых HTML-страницах. Глядя на страничку doxygen, я даже мог подумать, что doxygen может использовать любой синтаксис документации, определенный в сторонних спецификациях, и извлекать его и выводить как HTML.
Кроме того, интересно отметить, что веб-сайт doxygen не использует слова doxygen, как если бы это был не бренд их программного обеспечения, а общее существительное (ну, да?)
Что такое doxygen?
- механизм синтаксического анализа?
- движок рендеринга HTML?
- библиотека, которая может использоваться сторонним программным обеспечением для рендеринга своих собственных документов.
- спецификацию синтаксиса документации (де-факто)?
- все вышеперечисленное?
Я особенно смущен относительно взаимосвязи между doxygen и другими анализаторами кода, например ANTLR, boost-spirit, Ragel...
Например, что может сделать doxygen, что ANTLR не может, и что ANTLR может это doxygen не может?
Также, глядя на проект Drupal. Они имеют:
- их собственный API-модуль, который является "реализацией подмножества спецификации генератора документации Doxygen".
- их собственный модуль анализа грамматики (чтобы добавить к списку выше, наряду с самим doxygen, ANTLR и т.д.).
- их собственный веб-сайт API, содержащий два вышеупомянутых модуля, представляющих документацию Drupal in-code "doxygen" .
Итак, чтобы взять аналогию с С++, кажется, что слово "doxygen" перегружено и означает разные вещи в разных контекстах.
В проекте Drupal "doxygen" не относится к программному обеспечению, а просто (стандартная?) спецификация для синтаксиса документации, хотя, как я уже говорил выше, на первой странице самого веб-сайта doxygen не претендует на будь такой!
Итак, мой вопрос прощения:
Есть ли какая-либо другая спецификация синтаксиса документации?