Есть ли что-то вроде dOxygen/Javadoc? Что все привыкли, что хорошо работает?
Какие параметры доступны для документирования вашего Javascript-кода?
Ответ 1
800-фунтовая горилла Javascript документации - это JSDoc Toolkit и ее преемник JSDoc 3. Большая часть документации выполняется с помощью Javadoc-подобных тегов и префикса комментариев /**
.
Пример:
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() {}
}
);
Ответ 2
Как описано в this ссылка:
Существует еще один метод, который использует псевдокод в синтаксисе java для документирования javascript.
-
Используйте script, чтобы получить весь псевдокод из .js файлов и сгенерировать файлы .java с тем же именем, script прилагается ниже по имени builddoc. Этот script фактически получает все строки, начинающиеся с ///, '/*,'/',' * ','/и '//в .java файл. Таким образом, файл javascript, например
//* package ns; /** * Foo. * @param foo foo. */ var foo=function(foo){} //* public void foo(String foo);
будет преобразован в
package ns;
/**
* Foo.
* @param foo foo.
*/
public void foo(String foo);
И теперь doxygen может обрабатывать его по-японски. Вы должны использовать FILE_PATTERNS = *.java в настройке doxygen, чтобы сообщить doxygen для синтаксического анализа всех .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