¿Hay algo como dOxygen/Javadoc? ¿Qué ha usado todo el mundo que ha funcionado bien?¿Qué opciones hay disponibles para documentar su código Javascript?
Respuesta
El gorila de 800 libras de la documentación de Javascript es el JSDoc Toolkit y su sucesor JSDoc 3. La mayoría de la documentación se realiza con etiquetas tipo Javadoc y un prefijo de comentario /**
.
Ejemplo:
var MyClass = Class.create(
/** @lends MyClass# */ // @lends is how you document anonymous classes.
{
/**
* Description of constructor.
* @class Description of class. // @class annotation goes anywhere and
* // describes the whole class.
* @constructs // This is a constructor.
*/
initialize: function(arg0, arg1) {
//...
},
/** A method. */
myFunc: function() {},
/** An instance field. */
myVar: 123
}
);
Object.extend(MyClass,
/** @lends MyClass */
{
/** A class method. */
classFunc: function() {}
}
);
"A partir del 27 de junio de 2010, el proyecto JsDoc Toolkit versión 2 ya no aceptará ningún nuevo ticket de solicitud de funciones. Cualquier ticket de solicitud de funciones enviado después de esa fecha se eliminará sin comentarios". Hubo un solo cambio en 2012 y un cambio en 2011. ¿Es tan maduro que no necesita nuevos cambios o es esencialmente un proyecto muerto? –
No importa, un amigo me señaló [JSDoc 3 en GitHub] (https://github.com/jsdoc3/jsdoc). –
Agregué el enlace JSDoc 3, espero que no te importe. –
Como se describe en this enlace:
Hay otro método que utiliza pseudo código en la sintaxis de Java para documentar javascript ..
utilizar un script para obtener todo el pseudo código de los archivos .js y generar archivos .java con el mismo nombre, el script se adjunta debajo llamado builddoc. Este script realmente obtiene todas las líneas que comienzan con '///', '/ * ', '/', '*', '/' y '//' en el archivo .java. Así un archivo JavaScript como
//* package ns; /** * Foo. * @param foo foo. */ var foo=function(foo){} //* public void foo(String foo);
se convertirán en
package ns;
/**
* Foo.
* @param foo foo.
*/
public void foo(String foo);
Y ahora Doxygen puede procesar en forma java. Debe usar FILE_PATTERNS = * .java en su configuración doxygen para decirle a doxygen que analice todos los archivos .java.
builddoc:
#!/bin/bash
DIRs="./"
if [ $# -ne 0 ]
then
[email protected]
fi
for DIR in $DIRs; do
JSs=`find $DIR -name "*.js"`
for JS in $JSs; do
DOC=`echo $JS|sed 's/\(.*\)\.js/\1.java/g'`;
if [ $JS -nt $DOC ]; then
echo "rebuild $DOC"
grep -e '^\s*\(///\|//\*\|/\*\*\| \* \| \*/\)' $JS | sed 's/^\s*\/\/\*\(.*\)$/\1/g'> $DOC
fi
done
done
- 1. ¿Qué herramientas están disponibles para documentar los complementos de jQuery?
- 2. ¿Deberían los programadores usar variables booleanas para "documentar" su código?
- 3. Documentar javascript en Netbeans para autocompletar/completar código/intellisense
- 4. ¿Qué opciones de pruebas unitarias están disponibles para Silverlight?
- 5. ¿Hay soluciones de código abierto CAPTCHA disponibles?
- 6. ¿Hay buenos geoparsers de código abierto disponibles?
- 7. ¿Hay ncurses disponibles para Windows?
- 8. Práctica recomendada para documentar las dependencias de la biblioteca javascript
- 9. Software de gestión de proyectos, opciones disponibles
- 10. ¿Cuáles son las opciones disponibles para el método Doctrine_Core :: generateModelsFromDb?
- 11. ¿Qué hay en su lista de verificación de revisión de código javascript
- 12. ¿Qué bibliotecas de objetos falsos hay disponibles para D?
- 13. ¿Por qué oscurece su código?
- 14. jQuery UI Tabs - opciones de fx disponibles
- 15. Qué opciones de instalador hay para Visual Studio 2012 Express para escritorio
- 16. ¿Qué opciones de plantillas HTML hay en Java como alternativa a hacer salidas HTML desde su código de servlet?
- 17. ¿Qué hay en su .procmailrc
- 18. ¿Cómo documenta su JavaScript?
- 19. Cómo documentar la devolución en JavaScript
- 20. ¿Hay bibliotecas ccTalk disponibles?
- 21. ¿La mejor manera de documentar el código AJAX + PHP?
- 22. Qué herramientas están disponibles para documentar un esquema de base de datos heredado (PDF, DOC, HTML, RTF)
- 23. ¿Qué bibliotecas están disponibles para registrar a un usuario que navega por su sitio web para realizar pruebas de usabilidad?
- 24. ¿Puedo usar DoxyGen para documentar el código de ActionScript?
- 25. ¿Por qué no hay datos seriales disponibles en mi Arduino?
- 26. ¿Qué estructuras de datos de árbol Javascript están disponibles?
- 27. ¿Qué IDEs están disponibles para R en Linux?
- 28. ¿Qué paquetes LaTeX están disponibles para los diagramas de circuitos?
- 29. ¿Qué controladores MySQL están disponibles para node.js?
- 30. ¿Qué usa para proteger su código .NET de ingeniería inversa?
he implementado algunos de los generadores de documentos JavaScript [jsdoc, YUIDoc, Docco], aquí están algunos de mis hallazgos: http://www.markupjavascript.com/2014/02/ js-documentation-generator-tools-jsdoc-yuidoc-docco.html –
Uso http://ortelius.marten.dk. Es bastante fácil de instalar y usar (Windows), que a un lechón de GUI me gusta :) –
También hay [docco] (http://jashkenas.github.com/docco/) (o la versión de Ruby [rocco] (http : //rtomayko.github.com/rocco/)) que produce una documentación HTML realmente bonita en un diseño de dos columnas, con resaltado de sintaxis. No hay reglas estrictas sobre cómo debe estructurarse su documentación; en su lugar, analiza comentarios regulares. Markdown se puede usar para dar estilo a tus documentos con listas, ejemplos de código, etc. Lo estoy usando tanto para javascript como para ruby en este momento, es bastante claro. – foz