[Notes2-team] =?ISO-8859-1?Q?Documenta=E7=E3o=3A_javadoc_vs=2E_/doc?=
Brought to you by:
andersonrb
|
From: Anderson R. B. <no...@ig...> - 2003-07-28 18:33:31
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">
<title></title>
</head>
<body text="#000000" bgcolor="#ffffff">
<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">
<title></title>
<font face="Helvetica, Arial, sans-serif"><br>
<big><b>Documentação</b></big><br>
<br>
Eu tenho uma idéia nova para o Notes. Mas antes terei que contar um
pouco<br>
sobre java e o C# para vocês.<br>
<br>
<a href="#javadoc">javadoc</a> :: <a href="#doc">/doc</a> :: <a
href="#notesdoc">notesdoc<br>
</a><br>
<br>
<b><a name="javadoc"></a>javadoc</b><br>
<br>
Estive dando uma olhada no <i>javadoc</i>. O que é javadoc? O tio
explica:<br>
<br>
- A linguagem Java tem um tipo de comentário diferente do C, que é
assim:<br>
</font><tt>/*<br>
* Este é um tipo de comentário java que não existe em C.<br>
* Ele serve para documentar o código! Este documenta a<br>
* classe declarada abaixo:<br>
*/</tt><font face="Helvetica, Arial, sans-serif"><br>
public class Main extends java.lang.Object {<br>
<br>
- Ok, comentários que servem para documentar o código. Não parece nada
de novo.<br>
Mas é, por causa do javadoc. O javadoc é um pequeno utilitário que
coleta este tipo<br>
de comentário e a partir disto constrói toda a documentação. O mais
incrível é que toda<br>
a documentção da linguaem Java, das APIs, é feita desta forma. Pense
só: é muito mais<br>
fácil documentar o código deste modo, pois você não precisa criar todo
o html nem <br>
abrir um programa diferente para fazê-lo. Basta comentar o código, o
que um programador<br>
normalmente já está acostumado a fazer...<br>
<br>
<b><a name="doc"></a>/doc<br>
</b><br>
Ah! Claro isto é incrível e a Microsoft não poderia deixar de roubar a
idéia e dar uma melhorada nela!<br>
A mesma capacidade já existe na nova linguagem deles, o C#. Além do
comentário acima, é possível<br>
fazer comentários do tipo:<br>
</font><tt>///<br>
/// <sumary> Esta classe constrói o form <br>
/// principal da aplicação.</sumary><br>
/// <br>
class MainForm : System.Windows.Forms.Form {</tt><font
face="Helvetica, Arial, sans-serif"><br>
<br>
Hummm... Anderson, essas tags aí seriam XML?<br>
Claro. E é nisto que a M$ foi mais "esperta" que o pessoal<br>
do java. No java você pode fazer cosias parecidas. Por exemplo:<br>
<br>
</font><tt>/**<br>
* @param args contém os parâmetros da linha de comando<br>
*/<br>
public static void main(String[] args) {<br>
</tt><font face="Helvetica, Arial, sans-serif"><br>
Isto em C# seria assim:<br>
</font><tt>/**<br>
* <param>args contém os parâmetros da linha de
comando</param><br>
*/<br>
public static void main(String[] args) {<br>
</tt><font face="Helvetica, Arial, sans-serif"><br>
Mas o pessoal da Microsoft fez uma coisa que não me parece muito<br>
ineligente: o utilitário que arrecada a documentação é o próprio
compilador.<br>
Você usa o parâmetro "/doc" para mandar que ele crie a documentação para<br>
você. Claro, isto limita o uso do utilitário a uma linguagem (no caso,
o C#, mas<br>
parece que o VB .net já tem isto também). Outra diferença é que ele
gera XML<br>
e não HTML diferente. Depois os arquivos XML podem virar HTML, PDF,
DocBook,<br>
HTMLHelp, Latex, etc. Ao exportar para XML, você permite que a
documentção seja<br>
convetida para o formato que vocé quiser!<br>
<br>
É a mesma coisa! A diferença é que o java usa uma marcação só dela
usando o<br>
símbolo "@" enquanto o C# usa XML, que é uma marcação padrão.<br>
<br>
<br>
<b><a name="notesdoc"></a>notesdoc</b><br>
<br>
</font><font face="Helvetica, Arial, sans-serif">Ah! Sim, a minha
idéia... bom, vocês neste ponto já sabem qual é, né?!<br>
Criar o notesdoc, um pequeno utilitário de linha de comando capaz de<br>
coletar comentários de documentação em qualquer linguagem e gerar<br>
xml e html disto. Note que apesar das outras linguagens não terem este<br>
tipo de comentário, qualquer linguagem pode fazer algo parecido usando<br>
seus comentários normais. Em delphi por exemplo:<br>
</font><tt>(**<br>
* Este é um documentário pascal/delphi que pode ser<br>
* usado como comentário de documentação.<br>
*)<br>
<br>
</tt><font face="Helvetica, Arial, sans-serif">ou ainda:</font><tt><br>
///<br>
/// igual ao C#!!!<br>
///<br>
<br>
</tt><font face="Helvetica, Arial, sans-serif">O notesdoc funcionaria
usando por padrão o tipo de comentário<br>
do C#, pois ele é muito mais portável. Mas seria capaz de converter<br>
o formato do javadoc para o formato xml durante a coleta dos
comentários, <br>
tendo assim compatibilidade com a sun e com a M$. Além disto o
componente<br>
de edição do Notes 2 diferenciaria os dois tipos de comentário ao
colorir<br>
a sintaxe...<br>
<br>
Outra idéia é que usemos o notesdoc para comentar o próprio fonte<br>
do Notes - assim não precisaremos nos dar o trabalho de criar uma<br>
documentação separada...<br>
<br>
Que vocês acham???<br>
Anderson<br>
</font>
</body>
</html>
|