Sei sulla pagina 1di 23

Doxygen Documentando seu Cdigo-fonte

Kleber de Oliveira Andrade


pdjkleber@gmail.com pdjkleber@sc.usp.br

Laboratrio de Robtica Mvel - LabRoM Grupo de Mecatrnica - http://www.mecatronica.eesc.usp.br

Escola de Engenharia de So Carlos EESC/USP Setembro de 2010

Sumrio
Introduo
Padres de documentao usando o Doxygen Configurando o Doxygen Resultados
2010 Kleber de Oliveira Andrade 2

Sumrio
Introduo
Padres de documentao usando o Doxygen Configurando o Doxygen Resultados
2010 Kleber de Oliveira Andrade 3

Por que documentar ?


1 2
3 Facilitar a reutilizao e manuteno Disponibilizar documentao profissional Contribuir com o conhecimento

2010 Kleber de Oliveira Andrade

O que Doxygen?
um sistema de documentao de cdigo-fonte
Linguagens C C++ C# Object-C Python PHP Java IDL D Plataformas GNU/Linux (Unix) Mac OS X Windows Sadas HTML Latex RTF PostScript PDF XML CHM Unix man pages

2010 Kleber de Oliveira Andrade

Fluxo de informao do Doxygen

2010 Kleber de Oliveira Andrade

Sumrio
Introduo
Padres de documentao usando o Doxygen Configurando o Doxygen Resultados
2010 Kleber de Oliveira Andrade 7

Primeiro Exemplo
/// Descrio simples da classe (uma linha) /** * Descrio detalhada da classe. * Esta pode ter vrias linhas. * Quantas linhas voc realmente quiser. */ class Teste { //! Documentao antes do membro int valorInt; double valorDouble; /*!< Documentao depois do membro */ /** Descrio simples da funo at o ponto final Descrio detalhada da funo, pode ter vrias linhas dentro deste bloco \param valorFloat Descrio do parametro float \return Descrio do valor de retorno */ int Conveter( float valorFloat ); };

2010 Kleber de Oliveira Andrade

Padres comuns
//! /*! ... */ //!< /*!< ... */ /// /** ... */ ///< /**< ... */ Documentao simples de uma linha (antes) Documentao de mltiplas linhas (antes) Documentao simples de uma linha (depois) Documentao de mltiplas linhas (depois) Mesmo comportamento de //! Mesmo comportamento de /*! ... */ Mesmo comportamento de //!< Mesmo comportamento de /*!< ... */

Prefere-se o uso de /// e /* ... */ para manter compatibilidade com estilo de documentao usada em C#
2010 Kleber de Oliveira Andrade 9

Blocos de documentao auxiliar


\brief \param \return \sa \warning Uma linha simples de documentao Parmetro de uma funo Valor de retorno de uma funo Documentao auxiliar aconselhada (see also) Documentao de avisos ao usurio

Para usar em Java, troca-se \ por @


2010 Kleber de Oliveira Andrade 10

Estilos especiais
\class \struct \union \enum \fn \def \file \var \namespace \package \interface Classes Estruturas Unies Enumeradores Funes #define Arquivos Variveis Namespaces Pacotes Interface
2010 Kleber de Oliveira Andrade 11

Exemplo de Listas
/** * Text before the list * - list item 1 * - sub item 1 * - sub sub item 1 * - sub sub item 2 * . * The dot above ends the sub sub item list. * More text for the first sub item * . * The dot above ends the first sub item. * More text for the first list item * - sub item 2 * - sub item 3 * - list item 2 *. * More text in the same paragraph. * * More text in a new paragraph. */

2010 Kleber de Oliveira Andrade

12

Outros
Grupos
Agrupamento de entidades para melhorar a organizao do documento

Equaes
Incluso de equaes junto documentao

Diagramas
Gerao de grafos e diagramas UML de acordo com o relacionamento das entidades no cdigo
2010 Kleber de Oliveira Andrade 13

Sumrio
Introduo
Padres de documentao usando o Doxygen Configurando o Doxygen Resultados
2010 Kleber de Oliveira Andrade 14

Doxygen GUI (Interface)

2010 Kleber de Oliveira Andrade

15

Configuraes bsicas

2010 Kleber de Oliveira Andrade

16

Configuraes bsicas

2010 Kleber de Oliveira Andrade

17

Configuraes bsicas

2010 Kleber de Oliveira Andrade

18

Configuraes bsicas

2010 Kleber de Oliveira Andrade

19

Configuraes avanadas

2010 Kleber de Oliveira Andrade

20

Sumrio
Introduo
Padres de documentao usando o Doxygen Configurando o Doxygen Resultados
2010 Kleber de Oliveira Andrade 21

Resultado Final

2010 Kleber de Oliveira Andrade

22

Obrigado pela Ateno !

Kleber de Oliveira Andrade


pdjkleber@gmail.com pdjkleber@sc.usp.br

Laboratrio de Robtica Mvel - LabRoM Grupo de Mecatrnica - http://www.mecatronica.eesc.usp.br

Escola de Engenharia de So Carlos EESC/USP Setembro de 2010


23

Potrebbero piacerti anche