stringtranslate.com

Javadoc

Javadoc es un generador de documentación creado por Sun Microsystems para el lenguaje Java (ahora propiedad de Oracle Corporation ) con el fin de generar documentación de API en formato HTML a partir del código fuente de Java . El formato HTML se utiliza para agregar la comodidad de poder crear hipervínculos entre documentos relacionados. [1]

El formato de "comentarios de documentación" [2] utilizado por Javadoc es el estándar de facto de la industria para documentar clases Java. Algunos IDE , [3] como IntelliJ IDEA , NetBeans y Eclipse , generan automáticamente plantillas Javadoc. Muchos editores de archivos ayudan al usuario a producir el código fuente de Javadoc y utilizan la información de Javadoc como referencias internas para el programador.

Javadoc también proporciona una API para crear doclets y taglets, lo que permite a los usuarios analizar la estructura de una aplicación Java. De esta manera, JDiff puede generar informes sobre los cambios que se produjeron entre dos versiones de una API.

Javadoc no afecta el rendimiento en Java, ya que todos los comentarios se eliminan en el momento de la compilación. Escribir comentarios y Javadoc sirve para comprender mejor el código y, por lo tanto, para mantenerlo mejor.

Historia

Javadoc fue uno de los primeros generadores de documentación del lenguaje Java . [4] Antes del uso de generadores de documentación, era habitual utilizar escritores técnicos que normalmente escribían solo documentación independiente para el software, [5] pero era mucho más difícil mantener esta documentación sincronizada con el software en sí.

Java ha utilizado Javadoc desde el primer lanzamiento y normalmente se actualiza con cada nueva versión del Java Development Kit .

La @fieldsintaxis de Javadoc ha sido emulada por sistemas de documentación para otros lenguajes, incluido el sistema multilenguaje Doxygen , el sistema JSDoc para JavaScript, EDoc para Erlang y HeaderDoc de Apple .

Arquitectura técnica

Estructura de un comentario de Javadoc

Un comentario de Javadoc se separa del código mediante etiquetas de comentario estándar de varias líneas /*y */. La etiqueta de apertura (llamada delimitador de inicio de comentario) tiene un asterisco adicional, como en /**.

  1. El primer párrafo es una descripción del método documentado.
  2. A continuación de la descripción hay un número variable de etiquetas descriptivas que significan:
    1. Los parámetros del método ( @param)
    2. Lo que devuelve el método ( @return)
    3. Cualquier excepción que el método pueda lanzar ( @throws)
    4. Otras etiquetas menos comunes como @see(una etiqueta "ver también")

Descripción general de Javadoc

La mayoría de los comentarios de Javadoc están incrustados dentro de /** ... */las etiquetas. El bloque de comentarios de Javadoc se ubica inmediatamente encima de los elementos sin ninguna nueva línea de separación y debajo de cualquier declaración de importación. La declaración de clase generalmente contiene:

// declaraciones de importación/** * @author Nombre Apellido <dirección @ ejemplo.com> * @version 1.6 (número de versión actual del programa) * @since 1.2 (la versión del paquete al que se agregó esta clase por primera vez) */ public class Test { // cuerpo de la clase }    

Los comentarios de la documentación de los métodos suelen contener una descripción breve y concisa de una línea para explicar lo que hace el elemento, seguida de una descripción más larga y, por último, una sección de etiquetas que enumera los argumentos de entrada aceptados y los valores de retorno del método. El Javadoc se trata como HTML, por lo que <p>se puede utilizar una etiqueta de salto de párrafo " " para indicar varios párrafos.

/** * Descripción breve de una línea. (1) * <p> * Descripción más larga. Si hubiera alguna, sería (2) * aquí. * <p> * Y más explicaciones a continuación en párrafos consecutivos * separados por saltos de párrafo HTML. * * @param variable Descripción texto texto texto. (3) * @return Descripción texto texto texto. */ public int methodName (...) { // cuerpo del método con una declaración de retorno }     

Las variables se documentan de manera similar a los métodos, pero a menudo carecen de las etiquetas al final del comentario.

/** * Descripción de la variable aquí. */ private int debug = 0 ;    

No se recomienda [6] definir múltiples variables en un solo comentario de documentación, ya que Javadoc lee cada variable y las coloca por separado en la página HTML generada con el mismo comentario de documentación que se copia para todos los campos.

/** * Las distancias horizontales y verticales del punto (x,y) */ public int x , y ; // EVITAR    

En lugar de ello, se recomienda escribir y documentar cada variable por separado:

/** * La distancia horizontal del punto. */ public int x ;  /** * La distancia vertical del punto. */ public int y ;  

Tabla de etiquetas Javadoc

Algunas de las etiquetas Javadoc disponibles [7] se enumeran en la siguiente tabla:

Ejemplos

A continuación se muestra un ejemplo de Javadoc para documentar un método. Observe que el espaciado y la cantidad de caracteres en este ejemplo son los establecidos por las convenciones [ se necesita aclaración ] .

/** * Valida un movimiento de ajedrez. * * <p>Use {@link #doMove(int fromFile, int fromRank, int toFile, int toRank)} para mover una pieza. * * @param fromFile archivo desde el que se mueve una pieza * @param fromRank rango desde el que se mueve una pieza * @param toFile archivo al que se mueve una pieza * @param toRank rango al que se mueve una pieza * @return true si el movimiento es válido, de lo contrario false * @since 1.0 */ boolean isValidMove ( int fromFile , int fromRank , int toFile , int toRank ) { // ...body }          /** * Mueve una pieza de ajedrez. * * @see java.math.RoundingMode */ void doMove ( int fromFile , int fromRank , int toFile , int toRank ) { // ...body }          

Doclets

Los programas Doclet funcionan con la herramienta Javadoc para generar documentación a partir del código escrito en Java . [8]

Los doclets se escriben en el lenguaje de programación Java y se utilizan Doclet APIpara:

El StandardDoclet[1] incluido con Javadoc genera documentación de API como archivos HTML basados ​​en marcos . Hay muchos doclets no estándar disponibles en la web [ cita requerida ] , a menudo de forma gratuita. Se pueden utilizar para:

Véase también

Referencias

  1. ^ "Javadoc". agile.csc.ncsu.edu . Archivado desde el original el 13 de junio de 2017 . Consultado el 12 de enero de 2022 .
  2. ^ "javadoc - Generador de documentación de API de Java". Sun Microsystems . Consultado el 30 de septiembre de 2011 ..
  3. ^ IntelliJ IDEA, NetBeans Archivado el 5 de abril de 2017 en Wayback Machine y Eclipse
  4. ^ "Cómo escribir comentarios de documentos para la herramienta Javadoc". Sun Microsystems . Consultado el 30 de septiembre de 2011 ..
  5. ^ Venners, Bill; Gosling, James; et al. (8 de julio de 2003). "Visualización con JavaDoc". artima.com . Consultado el 19 de enero de 2013. Cuando hice el JavaDoc original en el compilador original, incluso la gente cercana a mí lo criticó bastante. Y fue interesante, porque la crítica habitual era: un buen escritor técnico podría hacer un trabajo mucho mejor que el que hace JavaDoc. Y la respuesta es, bueno, sí, pero ¿cuántas API están realmente documentadas por buenos escritores técnicos? ¿Y cuántos de ellos realmente actualizan su documentación con la frecuencia suficiente para que sea útil?
  6. ^ "Java Platform, Standard Edition Tools Reference for Oracle JDK on Solaris, Linux, and OS X, Release 8. Section "Multiple-Field Statements"" (Referencia de herramientas de la plataforma Java, edición estándar para Oracle JDK en Solaris, Linux y OS X, versión 8. Sección "Declaraciones de campos múltiples") . Consultado el 20 de diciembre de 2017 .
  7. ^ Especificación de comentarios de la documentación de JavaSE 13
  8. ^ "Descripción general del Doclet".

Enlaces externos