Генератор документації — програма або пакет програм, що дозволяє отримувати документацію, призначену для програмістів (документація на API) та/або для кінцевих користувачів системи, з особливим чином коментованого початкового коду і, в деяких випадках, з виконуваних модулів (отриманими на виході компілятора).
Зазвичай генератор аналізує початковий код програми, виділяючи синтаксичні конструкції, що відповідають значущим об'єктам програми (типами, класам та їх членам/властивостями/методам, процедурам/функціям тощо). В ході аналізу також використовується мета-інформація про об'єкти програми, подана у вигляді документувальних коментарів. На основі всієї зібраної інформації формується готова документація, як правило, в одному із загальноприйнятих форматів HTML, HTMLHelp, PDF, RTF тощо.
Документувальні коментарі
Документувальний коментар — це особливим чином оформлений коментар до об'єкту програми, призначений для використання певним генератором документації. Від того, який генератор документації застосовується, залежить синтаксис конструкцій, що використовуються в документувальних коментарях.
У документувальних коментарях може міститися інформація про автора коду, описуватися призначення об'єкта програми, зміст вхідних і вихідних параметрів для функції/процедури, приклади використання, можливі виняткові ситуації, особливості реалізації.
Документувальні коментарі, як правило, оформляються як багаторядкові коментарі в стилі мови Сі. У кожному разі коментар розташовується перед документованим елементом. Першим символом у коментарі (та на початку рядків коментарю) має бути *
. Блоки відокремлюються порожніми рядками.
Приклад документувального коментаря в мові PHP:
/** * Назва або короткий опис об'єкта * * Розгорнутий опис * * @назва_дескриптора значення * @return тип_даних */
Приклад документувального коментаря до функції в програмі на Java, призначеного для використання Javadoc:
/** * Перевіряє, чи допустимий хід. * Наприклад, щоб задати хід e2-e4, напишіть isValidMove (5,2,5,4); * @author John Doe * @param theFromFile Вертикаль, на якій міститься фігура (1 = a, 8 = h) * @param theFromRank Горизонталь, на якій міститься фігура (1 ... 8) * @param theToFile Вертикаль клітинки, на яку виконується хід (1 = a, 8 = h) * @param theToRank Горизонталь клітинки, на яку виконується хід (1 ... 8) * @return true, якщо хід припустимий, і false, якщо неприпустимий */ boolean isValidMove(int theFromFile, int theFromRank, int theToFile, int theToRank) { . . . }
Популярні генератори документації
Приклади для різних мов і середовищ програмування:
- Doc-O-Matic;
- [en] призначений для програм мовами VB6, VB.NET/C#/Visual C++ .NET (.NET Framework 1.0, 1.1 і 2.0), COM-компонентів, баз даних Access, Microsoft SQL Server і Oracle, XML Schema та іншими мовами опису XML;
- Doxygen — мовами , Сі, Objective-C, Java, IDL, PHP, C#, Фортран, VHDL, Python і, частково, D;
- [ru] — мовою Python;
- Javadoc — мовою Java;
- JSDoc — мовою JavaScript;
- ;
- — мовою Delphi/Pascal;
- [en] — мовою Perl (включений в стандартний дистрибутив);
- [ru] і PHPDoc (адаптація Javadoc для використання з PHP) — мовою PHP;
- POD — мовою Perl;
- [en] — мовою Ruby;
- [en];
- ;
- [en] — мовами C#, VB.NET та іншими мовами платформи .NET;
- [en] — для C#, VB.NET та іншими мовами платформи .NET;
- Sphinx — мовою Python;
- [en] — мовою VB6;
- [en] (раніше VBdocman .NET) — мовами VB.NET і C#;
- WEB / CWEB;
- [ru] — мовою Delphi (входить до складу бібліотеки KOL/MCK).
- PHPDox [ 30 липня 2020 у Wayback Machine.] — проекти PHP.
Примітки
- . Архів оригіналу за 27 листопада 2020. Процитовано 9 серпня 2020.
- . Архів оригіналу за 20 грудня 2016. Процитовано 9 серпня 2020.
- . Архів оригіналу за 30 січня 2009. Процитовано 9 серпня 2020.
- . Архів оригіналу за 6 червня 2022. Процитовано 10 червня 2022.
- . Архів оригіналу за 13 травня 2011. Процитовано 9 серпня 2020.
- . Архів оригіналу за 3 липня 2006. Процитовано 9 серпня 2020.
- http://www.helixoft.com/vbdocman/[недоступне посилання]
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Generator dokumentaciyi programa abo paket program sho dozvolyaye otrimuvati dokumentaciyu priznachenu dlya programistiv dokumentaciya na API ta abo dlya kincevih koristuvachiv sistemi z osoblivim chinom komentovanogo pochatkovogo kodu i v deyakih vipadkah z vikonuvanih moduliv otrimanimi na vihodi kompilyatora Zazvichaj generator analizuye pochatkovij kod programi vidilyayuchi sintaksichni konstrukciyi sho vidpovidayut znachushim ob yektam programi tipami klasam ta yih chlenam vlastivostyami metodam proceduram funkciyam tosho V hodi analizu takozh vikoristovuyetsya meta informaciya pro ob yekti programi podana u viglyadi dokumentuvalnih komentariv Na osnovi vsiyeyi zibranoyi informaciyi formuyetsya gotova dokumentaciya yak pravilo v odnomu iz zagalnoprijnyatih formativ HTML HTMLHelp PDF RTF tosho Dokumentuvalni komentariDokumentuvalnij komentar ce osoblivim chinom oformlenij komentar do ob yektu programi priznachenij dlya vikoristannya pevnim generatorom dokumentaciyi Vid togo yakij generator dokumentaciyi zastosovuyetsya zalezhit sintaksis konstrukcij sho vikoristovuyutsya v dokumentuvalnih komentaryah U dokumentuvalnih komentaryah mozhe mistitisya informaciya pro avtora kodu opisuvatisya priznachennya ob yekta programi zmist vhidnih i vihidnih parametriv dlya funkciyi proceduri prikladi vikoristannya mozhlivi vinyatkovi situaciyi osoblivosti realizaciyi Dokumentuvalni komentari yak pravilo oformlyayutsya yak bagatoryadkovi komentari v stili movi Si U kozhnomu razi komentar roztashovuyetsya pered dokumentovanim elementom Pershim simvolom u komentari ta na pochatku ryadkiv komentaryu maye buti Bloki vidokremlyuyutsya porozhnimi ryadkami Priklad dokumentuvalnogo komentarya v movi PHP Nazva abo korotkij opis ob yekta Rozgornutij opis nazva deskriptora znachennya return tip danih Priklad dokumentuvalnogo komentarya do funkciyi v programi na Java priznachenogo dlya vikoristannya Javadoc Pereviryaye chi dopustimij hid Napriklad shob zadati hid e2 e4 napishit isValidMove 5 2 5 4 author John Doe param theFromFile Vertikal na yakij mistitsya figura 1 a 8 h param theFromRank Gorizontal na yakij mistitsya figura 1 8 param theToFile Vertikal klitinki na yaku vikonuyetsya hid 1 a 8 h param theToRank Gorizontal klitinki na yaku vikonuyetsya hid 1 8 return true yaksho hid pripustimij i false yaksho nepripustimij boolean isValidMove int theFromFile int theFromRank int theToFile int theToRank Populyarni generatori dokumentaciyiPrikladi dlya riznih mov i seredovish programuvannya Doc O Matic en priznachenij dlya program movami VB6 VB NET C Visual C NET NET Framework 1 0 1 1 i 2 0 COM komponentiv baz danih Access Microsoft SQL Server i Oracle XML Schema ta inshimi movami opisu XML Doxygen movami C Si Objective C Java IDL PHP C Fortran VHDL Python i chastkovo D ru movoyu Python Javadoc movoyu Java JSDoc movoyu JavaScript movoyu Delphi Pascal en movoyu Perl vklyuchenij v standartnij distributiv ru i PHPDoc adaptaciya Javadoc dlya vikoristannya z PHP movoyu PHP POD movoyu Perl en movoyu Ruby en en movami C VB NET ta inshimi movami platformi NET en dlya C VB NET ta inshimi movami platformi NET Sphinx movoyu Python en movoyu VB6 en ranishe VBdocman NET movami VB NET i C WEB CWEB ru movoyu Delphi vhodit do skladu biblioteki KOL MCK PHPDox 30 lipnya 2020 u Wayback Machine proekti PHP Primitki Arhiv originalu za 27 listopada 2020 Procitovano 9 serpnya 2020 Arhiv originalu za 20 grudnya 2016 Procitovano 9 serpnya 2020 Arhiv originalu za 30 sichnya 2009 Procitovano 9 serpnya 2020 Arhiv originalu za 6 chervnya 2022 Procitovano 10 chervnya 2022 Arhiv originalu za 13 travnya 2011 Procitovano 9 serpnya 2020 Arhiv originalu za 3 lipnya 2006 Procitovano 9 serpnya 2020 http www helixoft com vbdocman nedostupne posilannya