Clique para saber mais...
  Home     Download     Produtos / Cursos     Revista     Vídeo Aulas     Fórum     Contato   Clique aqui para logar | 12 de Junho de 2026
  Login

Codinome
Senha
Salvar informações

 Esqueci minha senha
 Novo Cadastro

  Usuários
78 Usuários Online

  Revista ActiveDelphi
 Assine Já!
 Edições
 Sobre a Revista

  Conteúdo
 Apostilas
 Artigos
 Componentes
 Dicas
 News
 Programas / Exemplos
 Vídeo Aulas

  Serviços
 Active News
 Fórum
 Produtos / Cursos

  Outros
 Colunistas
 Contato
 Top 10

  Publicidade

  [Artigos]  [Básico] - Documentando seus códigos no Delphi
Publicado por rboaro : Terça, Março 19, 2013 - 10:04 GMT-3 (960 leituras)
Comentários 9 Comentários   Enviar esta notícia a um amigo Enviar para um amigo   Versão para Impressão Versão para impressão
Diego Garcia Definitivamente eu não gosto de comentários em código. Pode parecer não fazer sentido o que estou dizendo, mas comentários são venenos que colaboram para a deterioração de um código fonte. Qual é a unica razão para criar um comentário? Seja realista com você mesmo e responda com sinceridade. Tenho certeza que algo la no fundo está dizendo, “colocamos comentários quando o código não está suficientemente claro”, isso é péssimo, optar por criar um comentário no lugar de refatorar o código para que esse seja claro, é uma triste derrota. Como não estou escrevendo isto para despejar criticas sobre o uso de comentários, vamos falar sobre o assunto principal do post, o uso de documentações do Delphi, o XML Documentation.

Diferente de você escrever um comentário, documentar métodos e classes com o XML Documentation, dentro de suas limitações ainda sim é muito mais útil. Mas do que estamos realmente falando? Com certeza você já viu algo assim quando estava codificando:


Isso se chama Help Insight. Desta forma como está apresentado não ajuda muito, você não concorda comigo que seria muito melhor se fosse assim?



Principalmente se estamos falando de uma API onde os fontes não são disponibilizados, eu não tenho duvidas que a segunda forma é muito melhor. Mas como podemos fazer isso ? Através de comentários (ok, voltamos nesse assunto) iniciados com três barras (///), devidamente formatados e com tags xml especiais. Por exemplo, como fizemos com o método demonstrado acima:


/// <summary>Método que realiza o processamento principal dos arquivos de movimentos mensais gerando o agrupamento central</summary>

/// <param name="ACaminho">Caminho do arquivo de parametrização da geração do agrupamento central</param>

/// <returns>True se o processamento foi ok e False para possíveis exceções</returns>

/// <remarks>Em caso de falha verificar os arquivos de log</remarks>

/// <exception cref="EIOErro">Caso o arquivo de referencia não exista</exception>

/// <exception cref="EProcErro">Caso falhe o processamento</exception>

function RealizarProcessamentoCentral(const ACaminho : string):boolean;
A documentação é feita sempre acima do método/classe/record e caso contenha alguma falha de sintaxe a descrição não irá ser apresentada. As principais tags utilizadas são seguintes:

<summary>: Uma breve descrição sobre o proposito do método
<param name=”NomeDoParametro>: Uma descrição sobre um determinado parâmetro, identificado pelo seu nome dentro da tag xml.
<returns>: Uma descrição sobre o retorno do método, particularmente útil quando um método pode voltar determinados códigos de falha ou sucesso.
<remarks>: Uma possível observação sobre o método.
<exception cref=”NomeDaExceção”>: Referencia e observação a uma possível exceção na execução do método.
A lista completa pode ser encontrada em http://docwiki.embarcadero.com/RADStudio/XE3/en/XML_Documentation_Comments. Para visualizar a documentação de um método/classe/record, basta pressionar Ctrl + Shit + H em cima de uma chamada ou declaração desses. Para usa o recurso de exporta a documentação do projetos (através do model view) essas tag são utilizadas como referência para montar essa documentação.

Assim como os comentários, este tipo de documentação também é falha, pois não acompanha a evolução do código, ou seja, caso neste exemplo eu remova o parâmetro ACaminho a documentação não irá espelhar essa alteração fazendo com o que a documentação esteja defasada e mais atrapalhe do que ajude. Portanto, eu sugiro que use esse recurso com cautela e tenha a consciência de manter sua documentação atualizada caso passe a usar. Mesmo assim, nada substitui um código limpo e claro.


Comentários Comentários
   Ordem:  
Comentários pertencem aos seus respectivos autores. Não somos responsáveis pelo seus conteúdos.


por: williangnr (williangnr@gmail.com) : Mar 19, 2013 - 04:28
(Informações sobre o membro | Enviar uma mensagem)
Legal Boaro. Tente fazer no XE2 e não consegui.


por: michael_jackson (capitaocaverna007@hotmail.com) : Mar 22, 2013 - 08:21
(Informações sobre o membro | Enviar uma mensagem)
pra mim comentário serve para a seguinte ocasião, as vezes vocês está trabalhando todo dia no mesmo software, então você conhece de cabo a rabo o código fonte, mas se você fica meses sem contato com ele, você acaba se esquecendo de como funciona o código fonte, qual era a sequência, o que era executado primeiro, o que era depois, etc... e os comentários ajudam avocê se lembrar.


por: marcosweimer (marcosweimer@gmail.com) : Mar 27, 2013 - 03:30
(Informações sobre o membro | Enviar uma mensagem)
A partir de qual versão do delphi este recurso está presente? Costumo utilizar no C# quando digito /// antes da declaração o C# já gera automaticamente as chaves.
Com certeza é muito útil, valeu pela dica. (Nem sonhava que isso era possível no delphi)
  Edição 112

Revista ActiveDelphi

  50 Programas Fontes


  Produtos

Conheça Nossos Produtos

Copyright© 2001-2016 – Active Delphi – Todos os direitos reservados