Doxygen – najważniejsze cechyTworzenie dokumentacji
Doxygen – system generowania dokumentacji
Bogdan [email protected]
Zakład Podstaw Cybernetyki i RobotykiInstytut Informatyki, Automatyki i Robotyki
Politechnika Wrocławska
Kurs: Programowanie obiektowe
Copyright c©2012 Bogdan Kreczmer
Niniejszy dokument zawiera materiały do wykładu dotyczącego programowania obiektowego. Jest onudostępniony pod warunkiem wykorzystania wyłącznie do własnych prywatnych potrzeb i może on być kopiowanywyłącznie w całości, razem z niniejszą stroną tytułową.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Niniejsza prezentacja została wykonana przy użyciu sys-temu składu LATEX oraz stylu beamer, którego autoremjest Till Tantau.
Strona domowa projektu Beamer:http://latex-beamer.sourceforge.net
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Plan prezentacji
1 Doxygen – najważniejsze cechyOgólna charakterystykaPraca programu doxygen
2 Tworzenie dokumentacjiKonfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Ogólna charakterystykaPraca programu doxygen
1 Doxygen – najważniejsze cechyOgólna charakterystykaPraca programu doxygen
2 Tworzenie dokumentacjiKonfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Ogólna charakterystykaPraca programu doxygen
Krótko o doxygen
Autor projektu: Dimitri van HeeschStrona projektu: http://www.doxygen.org
Doxygen jest systemem dokumentowania oprogramowania pisanego w C++, C, Java,Objective-C, Python, IDL, Fortran, VHDL, PHP, C# oraz D.System ten może generować dokumentację w HTML oraz źródła dla LATEX’a. Doku-mentacja może mieć format RTF (MS-Word), PostScript, PDF (z hyper-łącznikami),skompresowanego HTML oraz stron podręcznika w systemie UNIX dla programu man.
Dokumentacja może być generowana bezpośrednio ze źródeł, jak też plików stowarzy-szonych z nimi.
Doxygen jest programem tworzonym dla systemu Linux i Mac OS w oparciu o biblio-tekę Qt (doxywizard). Oprogramowanie to jest przenośne. Może być uruchomionepod systemem UNIX i jego klonami. Dostępne jest również w postaci binarnej dlasystemu MS Windows.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Ogólna charakterystykaPraca programu doxygen
Projekty zdokumentowane z użyciem doxygen
Obecnie ponad 377 bardziej znanych projektów wykorzystuje system doxygen do genero-wania dokumentacji.
Jedne z bardziej znanych to:
Adobe Open Source – strona domowa projektów ASL (Adobe Source Libraries).
KDE - dokumentacja różnych bibliotek.
Samba
OSCAR (http://www.oscar-net.org) tworzy ogólną architekturę dla syrstemówrobotycznych z ukierunkowaniem na roboty mobilne.
XEngine (http://xengine.sourceforge.net) “silnik” dla wizualizacji 3D w czasierzeczywistym, jest on niezależny od platformy i typu API wykorzystywanegorenderowania.
Xerces C++ Parser – biblioteka umożliwiająca pisanie aplikacji, które wymagająparsera plików XML.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Ogólna charakterystykaPraca programu doxygen
Przykładowe systemy tworzenia dokumentacji
Niekomercyjne:
AutoDOC
HappyDoc
C2HTML
HyperSQL
DocClass
PHPDoc
Cocoon
Doc++
CppDoc
Javadoc
gtk-doc
cxxwrap
CcDoc
Epydoc
KDoc
Tydoc
Cxref
Autoduck
RoboDoc
ScanDoc
Synopsis
Perceps
VBDOX
Natural Docs
phpDocumentor
HeaderDoc
Cxx2HTML
ReThree-C++
HTMLgen
Komercyjne:
CC-Rider
DocJet
Doc-o-matic
ObjectManual
Together
DocBuilder
VBXC
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Ogólna charakterystykaPraca programu doxygen
1 Doxygen – najważniejsze cechyOgólna charakterystykaPraca programu doxygen
2 Tworzenie dokumentacjiKonfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Ogólna charakterystykaPraca programu doxygen
Doxygen – kompnenty
doxygen - program generujący dokumentację na podstawie utworzonegowcześniej pliku konfiguracyjnego i przeglądanych plików (źródeł progra-mów i nie tylko).
doxytag - program pomocniczy pozwalający integrować zewnętrzną doku-mentację (do której doxygen nie ma bezpośredniego dostępu) z doku-mentacją tworzoną przez doxygen.
doxywizard - graficzna aplikacja ułatwiająca tworzenie pliku konfiguracyjne-go dla dokumentacji danego projektu.
Komponenty stowarzyszone:
graphviz - oprogramowanie wykorzystywane do towrzenia rysunków grafów.Strona projektu: http://www.research.att.com/sw/tools/graphviz/
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Ogólna charakterystykaPraca programu doxygen
Przepływ informacji
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
1 Doxygen – najważniejsze cechyOgólna charakterystykaPraca programu doxygen
2 Tworzenie dokumentacjiKonfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Katalogi i rozmieszczenie plików
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Katalogi i rozmieszczenie plików
Zakładamy, że w katalogu doxuruchamiamy aplikację doxywizard.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Konfiguracja projektu – okienko aplikacji doxywizard
Ważniejsze ustawienia
Katalog roboczy: . (bieżący)Katalog ze źródlami: ../prj
Przeglądanie katalogów: rekursywne
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Konfiguracja trybu pracy
Ważniejsze trybu pracy
Domyślnie w dokumentacji znajdą siętylko elementy, które są publiczne.
(All Entities) W dokumentacji znajdąsię również elementy, które nie sązdokumentowane.
(Include cross-referenced . . .) Wdokumentacji znajdzie się kod plikównagłówkowych wraz z odsyłaczami dodefinicji poszczególnych klas.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Konfiguracja formatu generowanej dokumentacji
Ważniejsze trybu pracy
Domyślnie dokumentacja będziegenerowana w podkatalogu html(zostanie on utworzony w trakciepierwszego uruchomienia programudoxygen).
(with frames . . .) Zostanie utworzoneboczny rozwijalny indeks.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Konfiguracja generacji diagramów
Ważniejsze trybu pracy
Jeśli mamy zainstalowany GraphVizdobrze jest zaznaczyć wszystkierodzaje diagramów. Pozwoli to miećpełną informację o strukturzeprogramu i wzajemnych zależnościmiędzy poszczególnymi metodami ifunkcjami.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Generowanie dokumentacji
Faza generacji
Gdy mamy wszystko ustawione, dobrzejest wcześniej zachować konfiguracjędo pliku, a następnie uruchomić fazęgeneracji dokumentacji.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Rezultat uproszczonego zestawu ustawieńCechy wygenerowanej dokumentacji
Korzystanie z uproszczonego trybu do zada-wania ustawień konfiguracyjnych powoduje,że wygenerowana dokumentacja ma nastę-pujące wady:
dodatkowe elementy opisugenerowane przez doxygen sązawsze tylko w języku angielskim,
nazwy plików są podawane z pełnąścieżką dostępu,
dokumentacja nie jest generowanadla atrybutów klasy, które znajdująsię w sekcji prywatnej. Jeżelidokumentacja jest robiona dlaużytkownika zewnętrznego, to jestto dobre rozwiązanie. Jednak jeślirobimy ją na własne potrzeby ichcemy mieć pełen zestawinformacji, to takie rozwiązanie jestniekorzystne.
Aby usunąć te wady należy . . .
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opcje rozszerzone – sekcja Project
Ustawienia projektu
Należy przejść do zakładki Expert i wykonaćnastępujące operacje:
wybrać polską wersję jezykową.
korzystnie jest odznaczyćustawienienie REPEAT BRIEF (dziękitemu nie będzie powtarzanyskrócony opis w pełnym opisiedanego elementu),
należy odznaczyć ustawienieFULL PATH NAMES (nazwy plikówbędą występowały bez pełnejścieżki dostępu).
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opcje rozszerzone – sekcja Build
Ustawienia sposobu generacji dokumentu
korzystnie jest zaznaczyćustawienienie EXTRACT PRIVATE,dzięki temu pojawi siędokumentacja elementówprywatnych klasy.
wskazane jest również zaznaczenieustawienia SHOW DIRECTORIES,pozwoli to mieć informację ostrukturze katalogów, w którychznajdują się dokumentowane pliki.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opcje rozszerzone – sekcja Build
Ustawienia sposobu generacji dokumentu
korzystnie jest zaznaczyćustawienienie EXTRACT PRIVATE,dzięki temu pojawi siędokumentacja elementówprywatnych klasy.
wskazane jest również zaznaczenieustawienia SHOW DIRECTORIES,pozwoli to mieć informację ostrukturze katalogów, w którychznajdują się dokumentowane pliki.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opcje rozszerzone – sekcja Messages
Ustawienia komunikatów
warto zaznaczyć ustawienienieQUIET, dzięki temu w trakciegeneracji dokumentacji niepojawiają się komunikaty co jesttworzone (z punktu widzeniapoprawności tworzonejdokumentacji zazwyczaj nie są oneistotne),
wskazane jest również zaznaczenieustawienia WARN NO PARAMDOC,powoduje to generowanieostrzeżeń, gdy jakieś parametrymetody/funkcji lub wartość, którązwraca, nie są zdokumentowane.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opcje rozszerzone – sekcja Messages
Ustawienia komunikatów
warto zaznaczyć ustawienienieQUIET, dzięki temu w trakciegeneracji dokumentacji niepojawiają się komunikaty co jesttworzone (z punktu widzeniapoprawności tworzonejdokumentacji zazwyczaj nie są oneistotne),
wskazane jest również zaznaczenieustawienia WARN NO PARAMDOC,powoduje to generowanieostrzeżeń, gdy jakieś parametrymetody/funkcji lub wartość, którązwraca, nie są zdokumentowane.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opcje rozszerzone – sekcja Dot
Ustawienia generacji diagramów
dobrze jest zaznaczyć ustawienienieCLASS DIAGRAM, dzięki temupozwoli to na umieszczenie wdokumentacji diagramów klas.
Uwaga: nie jest korzystnezaznaczanie ustawienia UML LOOK.Powoduje to powstawanie bardzoszczegółowego diagramu, którystaje się nieczytelny.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opcje rozszerzone – sekcja Dot
Ustawienia generacji diagramów
dobrze jest zaznaczyć ustawienienieCLASS DIAGRAM, dzięki temupozwoli to na umieszczenie wdokumentacji diagramów klas.
Uwaga: nie jest korzystnezaznaczanie ustawienia UML LOOK.Powoduje to powstawanie bardzoszczegółowego diagramu, którystaje się nieczytelny.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Generacja dokumentacji - zakładka Run
Generacja dokumentacji
Jeśli wszystko jest dobrze, to w trakcie ge-neracji dokumentu nie powinno być żadnychostrzeżeń.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Rezultat uproszczonego zestawu ustawieńCechy wygenerowanej dokumentacji
Teraz mamy już opisy po polsku, zaś nazwyplików występują bez pełnej ścieżki dostępu.
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
1 Doxygen – najważniejsze cechyOgólna charakterystykaPraca programu doxygen
2 Tworzenie dokumentacjiKonfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Strona tytułowa zdokumentowanego systemu
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Lista plików
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opis pliku kwadrat.hh dla programu doxygen
#ifndef KWADRAT_HH#define KWADRAT_HH
/*!* \file* \brief Definicja klasy Kwadrat** Plik zawiera definicję klasy Kwadrat, która* jest klasą pochodną i jest ona specjalizacją* klasy FiguraGeometryczna*/
#include "figurageometryczna.hh"
...
#endif
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opis pliku: kwadrat.hh
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Kod pliku (w dokumentacji): kwadrat.hh
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opis pliku kwadrat.hh dla programu doxygen#ifndef KWADRAT_HH#define KWADRAT_HH
/*!* \file* \brief Definicja klasy Kwadrat** Plik zawiera definicję klasy Kwadrat, która* jest klasą pochodną i jest ona specjalizacją* klasy FiguraGeometryczna*/
#include "figurageometryczna.hh"
/*!* \brief Modeluje pojęcie kwadratu...*/class Kwadrat: public FiguraGeometryczna {...#endif
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Dokumentacja klasy Kwadrat
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Dokumentacja klasy Kwadrat
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Szczegółowy opis klasy Kwadrat i skrócone opisy metod/*!* \brief Modeluje pojęcie kwadratu** Klasa modeluje pojęcie kwadratu o zadanej długości boku.* Jej atrybutem jest pole zawierające długość boku.* Przyjmuje się, że długość podawana jest w jednostkach* niemianowanych.*/class Kwadrat: public FiguraGeometryczna {public:/*!* \brief Inicjalizuje długość boku** Inicjalizuje długość boku oraz wymusza wywołania konstruktora* klasy bazowej z identyfikatorem właściwym dla figury geometrycznej* typu kwadrat.* \param[in] DlugoscB - długość boku kwadratu. Jest ona zapisywana* w polu \link Kwadrat:: DlugoscBoku DlugoscBoku\endlink.*/Kwadrat(double DlugoscB): FiguraGeometryczna(TF Kwadrat),
DlugoscBoku(DlugoscB) {}
...Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Dokumentacja metody w klasie Kwadrat
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opis metody w klasie Kwadrat/*!* \brief Modeluje pojęcie kwadratu** Klasa modeluje pojęcie kwadratu o zadanej długości boku.* Jej atrybutem jest pole zawierające długość boku.* Przyjmuje się, że długość podawana jest w jednostkach* niemianowanych.*/class Kwadrat: public FiguraGeometryczna {public:/*!* \brief Inicjalizuje długość boku** Inicjalizuje długość boku oraz wymusza wywołania konstruktora* klasy bazowej z identyfikatorem właściwym dla figury geometrycznej* typu kwadrat.* \param[in] DlugoscB - długość boku kwadratu. Jest ona zapisywana* w polu \link Kwadrat:: DlugoscBoku DlugoscBoku\endlink.*/Kwadrat(double DlugoscB): FiguraGeometryczna(TF Kwadrat),
DlugoscBoku(DlugoscB) {}
...Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Dokumentacja metody Kwadrat::ObliczPole()
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opis skrócony metody w klasie Kwadrat w kwadrat.hh/*!* \brief Modeluje pojęcie kwadratu** Klasa modeluje pojęcie kwadratu o zadanej długości boku.* Jej atrybutem jest pole zawierające długość boku.* Przyjmuje się, że długość podawana jest w jednostkach* niemianowanych.*/class Kwadrat: public FiguraGeometryczna {public:.../*!* \brief Wyznacza pole powierzchni kwadratu*/double ObliczPole() const;
...
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opis szczególowy przed definicją metody w kwadrat.cpp#include "kwadrat.hh"
/*!* \file* \brief Definicja metody klasy Kwadrat** Zawiera definicję metod klasy Kwadrat.*/
/*!* Wyznacza pole powierzchni danego kwadratu* i zwraca jego wartość.** \return Zwraca pole powierzchni kwadratu. Jest ono wyrażone* w jednostkach niemianowanych.*/double Kwadrat::ObliczPole() const{return DlugoscBoku* DlugoscBoku;}
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opis szczególowy przed definicją metody w kwadrat.cpp#include "kwadrat.hh"
/*!* \file* \brief Definicja metody klasy Kwadrat** Zawiera definicję metod klasy Kwadrat.*/
/*!* Wyznacza pole powierzchni danego kwadratu* i zwraca jego wartość.** \return Zwraca pole powierzchni kwadratu. Jest ono wyrażone* w jednostkach niemianowanych.*/double Kwadrat::ObliczPole() const{return DlugoscBoku* DlugoscBoku;}
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Dokumentacja pliku kwadrat.cpp
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Kod pliku kwadrat.cpp w dokumentacji
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Dokumentacja pola Kwadrat:: DlugoscBoku
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opis pola Kwadrat:: DlugoscBoku/*!* \brief Modeluje pojęcie kwadratu** Klasa modeluje pojęcie kwadratu o zadanej długości boku.* Jej atrybutem jest pole zawierające długość boku.* Przyjmuje się, że długość podawana jest w jednostkach* niemianowanych.*/class Kwadrat: public FiguraGeometryczna {public:...
private:/*!* \brief Długość boku kwadratu** Pole zawiera długość boku kwadratu. Przyjmuje* się, że jest ona podana w jednostkach niemianowanych.*/double DlugoscBoku;
};
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Dokumentacja typu wyliczeniowego
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opis typu wyliczeniowego TypFiguryGeometrycznej
/*!* \brief Rodzaj figury geometrycznej modelowanej przez daną klasę** Wartości tego typu służą jako indentyfikatory dostępnych rodzai* figur geometrycznych.*/enum TypFiguryGeometrycznej {
TF Zadna /*! Nie jest to żadna konkretna figura geometryczna */,TF Kwadrat /*! Figura geometryczna jest kawadratem */,TF Kolo /*! Figura geometryczna jest kołem */
};
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Wykorzystanie w dokumentacji środowiska verbartim
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Opis funkcji. Użycie środowiska verbatim
/*!* \brief Wyświetla pole figury geometrycznej** Funkcja wyświetla pole figury geometrycznej. Na podstawie* identyfikatora typu figury rozpoznaje, czy obiekt jest* częścią składową obiektu klasy Kolo, czy też Kwadrat,* lub czy jest to samodzielny obiekt klasy FiguraGeometryczna.* W zależności od tego wyświetla dokonuje właściwego rzutowania* i wylicza pole figury. Następnie wyświetlany jest komunikat,* w którym jest zawarta nazwa rodzaju figury oraz wartość jej pola,* np.\verbatim
Kwadrat Pole = 10
\endverbatim** \param[in] Figura - figura geometryczna, dla której ma zostać* wyświetlona wartość jej pola.*/
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Strona główna
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Formatowanie strony głównej plik: strona.dox
/*!\mainpage 2Ow1L - Bardzo Prosty Przykład Dwóch Rodzai Obiektów w Jednej Liście
Aplikacja jest przykładem realizacji dwóch listbez korzystania z mechanizmów metod wirtualnych.Prowadzi to do dość siermiężnej konstrukcji,którą można zobaczyć w kodzie.
\section etykieta-wazne-cechy Najważniejsze cechy
Lista dwóch rodzai figur ukrywa ukrywa wewnętrzną strukturęlisty. Publiczny interfejs klasy udostępnia metody, któredodają kwadraty lub koła.\nKonstrukcja wspólnej listy bazuje na fakcie, że zarównoobiekty klasy Kwadrat, jak też obiekty klasy Kolo, są...
*/
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Formatowanie strony głównej plik: strona.dox
/*!\mainpage 2Ow1L - Bardzo Prosty Przykład Dwóch Rodzai Obiektów w Jednej Liście
Aplikacja jest przykładem realizacji dwóch listbez korzystania z mechanizmów metod wirtualnych.Prowadzi to do dość siermiężnej konstrukcji,którą można zobaczyć w kodzie.
\section etykieta-wazne-cechy Najważniejsze cechy
Lista dwóch rodzai figur ukrywa ukrywa wewnętrzną strukturęlisty. Publiczny interfejs klasy udostępnia metody, któredodają kwadraty lub koła.\nKonstrukcja wspólnej listy bazuje na fakcie, że zarównoobiekty klasy Kwadrat, jak też obiekty klasy Kolo, są...
*/
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Strona główna — wariant z danymi autora
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Strona główna — wariant z danymi autora plik: strona.dox
/*!\mainpage 2Ow1L - Bardzo Prosty Przykład Dwóch Rodzai Obiektów w Jednej Liście
\author Jan Kowalski\date 06.05.1012\version 0.1
Aplikacja jest przykładem realizacji dwóch listbez korzystania z mechanizmów metod wirtualnych.Prowadzi to do dość siermiężnej konstrukcji,którą można zobaczyć w kodzie.
\section etykieta-wazne-cechy Najważniejsze cechy
Lista dwóch rodzai figur ukrywa ukrywa wewnętrzną strukturęlisty. Publiczny interfejs klasy udostępnia metody, które...
*/
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Wybrane sposoby zmiany stylu czcionki — łamanie linii
/*!...
To jest przykład\n wymuszenia łamania linii. Odpowiadaza to znak \\n.*/
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Wybrane sposoby zmiany stylu czcionki — pismo pochyłe
/*!...
To jest przykład wymuszenia \e pisma \e pochyłego.Odpowiada za to polecenie \\e.*/
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Wybrane zmiany stylu czcionki — pismo maszynowe
/*!...
To jest przykład \p pisma \p maszynowego.Odpowiada za to polecenie \\p.*/
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
1 Doxygen – najważniejsze cechyOgólna charakterystykaPraca programu doxygen
2 Tworzenie dokumentacjiKonfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Linia polecenia
Dokumentację można wygenerować wywołującz linii polecenia program doxygen. W wywoła-niu tym jako parametru należy użyć pliku (wrazze ścieżką dostępu, o ile plik ten nie znajduje sięw bieżącej kartotce), który zawiera konfiguracjędla danej dokumentacji.
Konsola:
jkowalsk@panamint> doxygen Doxyfile
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Linia polecenia
Lepszym jednak pomysłem jest stworzenie odpowied-niego pliku Makefile. Pozwala to przekierować wyj-ście standard error do pliku. Dzięki temu późnejmożna przeglądać wszystkie ostrzeżenia i komunikatybez komunikatów informacyjnych generowanych przezprogram doxygen.
Konsola:
jkowalsk@panamint> make
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Konfiguracja generacji dokumentacji dla doxygenWygląd dokumentacja i jej źródełGenerowanie dokumentacji z linii polecenia
Przykładowa minimalna zawartość pliku Makefile
Makefilestart doxy :
doxygen Doxyfile 2> doxy.logless doxy.log
Programowanie obiektowe Doxygen – system generowania dokumentacji
Doxygen – najważniejsze cechyTworzenie dokumentacji
Koniec prezentacjiDziękuję za uwagę
Programowanie obiektowe Doxygen – system generowania dokumentacji
Top Related