Java 14 Javadoc

Embed Size (px)

Citation preview

  • 1. Documentao com Javadoc
      • Regis Pires Magalhes
    • [email_address]

2. Problema

  • Como saber quais classes podemos usar? Quais os seus mtodos e o que eles fazem?
    • Atravs de alguma documentao.
  • A documentao do Java pode ser acessada via Internet a partir do endereo:
    • http://java.sun.com/javase/6/docs/api/
  • Javadoc:
    • Quadro superior esquerdo: pacotes
    • Quadro inferior esquerdo: classes e interfaces.
    • Quadro da direita: detalhes do que foi escolhido.
    • Mtodos e atributos privados no aparecem.
    • Podemos gerar nossos prprios javadoc a partir da linha de comando, usando o comando javadoc.

3. Gerao de Javadoc

  • A partir do Eclipse
    • Menu Project > Generate Javadoc
    • Ou pelo export do projeto.

4. Javadoc

    • O Javadoc criado a partir de comentrios delimitados por /** e */.
    • Linhas entre os delimitadores apenas precisam de um *.
    • Nos comentrios podemos definir autor, verso, parmetros, retorno, etc.

/** * Classe responsavel por moldar as Contas do Banco * * @author Guilherme * */ public abstract classConta { 5. Javadoc /** * Metodo que incrementa o saldo. * * @param valor */ public voiddeposita( doublevalor) { 6. Javadoc 7. Comentrios em Java

    • Comentrios de linha
      • Iniciam com duas barras consecutivas ( // ) e continuam at o final da linha
    • Comentrios em bloco
      • Iniciam com a seqncia barra asterisco ( /* ) e encerram com a seqncia inversa asterisco barra ( */ )
      • Podem se estender por mais de uma linha
      • Comumente usa-se um asterisco no incio de cada linha que compe o comentrio

8. Comentrios em Java //Exemplo de comentrio de linha //Outra linha de comentrio /* Exemplo de comentrio* em bloco que se estende por mais* de uma linha */ /* Outro exemplo de comentrio em bloco */ 9. Documentao com Javadoc

  • Sintaxe
    • Possui um conjuntodoc tagsque so comandos iniciados por@e divididas em dois subconjuntos:
      • Standalone doc tags devem estar no incio de cada linha
      • In line doc tags podem aparecer em qualquer parte do javadoc e devem vir entre chaves {...}
    • Aceita HTML embutido.

10. Documentao /** * Classe base responsvel pelo armazenamento das * informaes do cliente da loja. * @autor Fulano * @version 1.0 */ public classPessoa { /** * Identidicador nico do Cliente no sistema */ private int id ; ... /** * Construtor ... */ publicPessoa() { ... } /** * Fornece o identificador nico do cliente * @return Nmero que identifica o clienete no sistema */ public intgetId(){return id ; } // ... } 11. HTML embutido

    • javadocpassa todo cdigo HTML contido no comentrio para o HTML gerado
    • Usado para formatar o comentrio
    • Exemplo:

/** * * System.out.println(new Date()); * */ /** * Voc pode inserir listas: *

  1. *
  2. Item um *
  3. Item dois *
  4. Item trs *

*/ 12. doc tags

    • @see faz referncia documentao de outra classe
      • @see nome-da-classe
      • @see nome-completamente-qualificado
      • @see nome-completamente-qualificado#nome-metodo
    • Gera o link See Also na documentao
    • {@link} semelhante tag see,exceto pelo fato de poder ser usadainlinee permitir a adio de um rtulo
      • {@link nome-completamente-qualificado#nome-metodo rotulo}
    • {@docRoot}- fornece um path relativo para o diretrio raiz da documentao gerada

/** * Veja o Copyright . */ 13. doc tags

    • {@inheritDoc} herda o comentrio de uma superclasse dentro do comentrio corrente
    • @version informao sobre a verso da classe

14. doc tags

    • @author informao sobre o autor da classe
    • @since permite informar a verso do cdigo a partir da qual um caracterstica e suportada

15. doc tags

    • @param usada na documentao de mtodos. Permite fazer uma descrio da lista de parmetros de um mtodo
    • @return usada na documentao de mtodos. Permite fazer uma descrio do retorno do mtodo

16. doc tags

    • @deprecated indica que o elemento relacionado ser substitudopor outro melhorado

17. Parte integrante do JDK

  • Sinopse:
    • javadoc [ options ] [ packagenames ] [ sourcefilenames ] [ @argfiles ]
      • options: Opes de linha de comando
      • packagenames: lista de nomes de pacotes, separados por espao, que devero ser documentados
      • sourcefilenames: lista de nomes de arquivos, separados por espao. Javadoc processar todos os arquivos terminados com.java
      • @argfiles: um ou mais arquivos que contm opes Javadoc, lista de pacotes ou lista de arquivos fontes em qualquer ordem