2009-03-21 16 views
89

क्या डॉक्सीजन/जावाडोक की तरह कुछ है? हर किसी ने क्या किया है जिसने अच्छी तरह से काम किया है?आपके जावास्क्रिप्ट कोड को दस्तावेज़ित करने के लिए कौन से विकल्प उपलब्ध हैं?

+0

मैं जावास्क्रिप्ट दस्तावेज़ जेनरेटर [JSDoc, YUIDoc, Docco], यहां मेरी निष्कर्षों में से कुछ हैं में से कुछ को लागू किया: http://www.markupjavascript.com/2014/02/ जेएस-प्रलेखन-जेनरेटर-टूल्स-जेएसडोक-यूयूडोक-डॉक्को.html –

+0

मैं http://ortelius.marten.dk का उपयोग करता हूं। इंस्टाल करने और उपयोग करने के लिए यह बहुत आसान है (विंडोज़), जो मेरे जैसे जीयूआई चूसने वाला पसंद करता है :) –

+0

भी [डॉको] (http://jashkenas.github.com/docco/) (या रूबी संस्करण [रोक्को] (http : //rtomayko.github.com/rocco/)) जो दो कॉलम लेआउट में वास्तव में सुंदर HTML दस्तावेज़ प्रस्तुत करता है, जिसमें सिंटैक्स हाइलाइटिंग फेंक दिया गया है। आपके दस्तावेज़ों को कैसे संरचित किया जाना चाहिए इसके लिए कोई सख्त नियम नहीं है; इसके बजाय यह नियमित टिप्पणियों का विश्लेषण करता है। मार्कडाउन का उपयोग सूचियों, कोड उदाहरणों आदि के साथ अपने दस्तावेज़ों को स्टाइल करने के लिए किया जा सकता है। मैं इस समय जावास्क्रिप्ट और रूबी दोनों के लिए इसका उपयोग कर रहा हूं, यह बहुत साफ है। – foz

उत्तर

67

जावास्क्रिप्ट दस्तावेज का 800-पाउंड गोरिल्ला JSDoc Toolkit और इसके उत्तराधिकारी JSDoc 3 है। अधिकांश दस्तावेज जवाडोक-जैसे टैग और /** टिप्पणी उपसर्ग के साथ किए जाते हैं।

उदाहरण:

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() {} 
    } 
); 
+0

"27 जून 2010 तक जेएसडॉक टूलकिट संस्करण 2 प्रोजेक्ट अब किसी भी नए फीचर रिक्वेस्ट टिकट को स्वीकार नहीं कर रहा है। उस तारीख के बाद सबमिट किए गए किसी भी फ़ीचर अनुरोध टिकट को बिना किसी टिप्पणी के हटा दिया जाएगा।" 2012 में केवल एक ही बदलाव था, और 2011 में एक बदलाव था। क्या यह इतना परिपक्व है कि इसे नए बदलावों की आवश्यकता नहीं है, या यह अनिवार्य रूप से एक मृत परियोजना है? –

+3

कभी नहीं, एक दोस्त ने मुझे [GitHub पर JSDoc 3] की ओर इशारा किया [https://github.com/jsdoc3/jsdoc)। –

+2

मैंने जेएसडीओसी 3 लिंक जोड़ा, आशा है कि आपको कोई फर्क नहीं पड़ता। –

1

this लिंक में वर्णित है: एक स्क्रिप्ट

किसी अन्य विधि जावा वाक्य रचना में छद्म कोड का उपयोग करता है जावास्क्रिप्ट दस्तावेज़ के लिए नहीं है ..

  1. उपयोग .js फ़ाइलों से सभी छद्म कोड प्राप्त करें और उसी नाम से .java फ़ाइलों को जेनरेट करें, स्क्रिप्ट को बिल्डडोक नामक बेलो संलग्न किया गया है। इस स्क्रिप्ट में वास्तव में सभी पंक्तियां '///', '/ * ', '/', '*', '/' और '//' से .java फ़ाइल में शुरू होती हैं। तो जैसे

    //* 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 जावा तरीके से संसाधित कर सकें। आपको सभी .java फ़ाइलों को पार्स करने के लिए डॉक्सिजन को बताने के लिए FILE_PATTERNS = * .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 
संबंधित मुद्दे