سؤال

وأدركت للتو من مقال في CACM الذي يعمل Doxygen مع جافا (وعدة لغات أخرى) أيضا. لكن جافا لديها بالفعل أداة جافادوك. يمكن للشخص أن يفسر ما هي إيجابيات وسلبيات إما النهج؟ هل تستبعد إحداهما الأخرى؟ هناك المساعد مخضرم لDoxygen؟

هل كانت مفيدة؟

المحلول

وDoxygen لديها عدد من الميزات التي لا تقدم جافادوك، على سبيل المثال المخططات فئة لالتسلسلات الهرمية وسياق التعاون والمزيد من الصفحات ملخص، اختياري تصفح التعليمات البرمجية المصدر (عبر ربط مع وثائق)، ودعم بطاقة إضافية مثلtodo على صفحة منفصلة ويمكن توليد الناتج في تكس وشكل PDF . وهو يسمح أيضا الكثير من التخصيص البصرية.

ومنذ Doxygen يدعم العلامات جافادوك القياسية التي يمكن تشغيلها على أي Doxygen شفرة المصدر مع تعليقات جافادوك على ذلك. في كثير من الأحيان يمكن أن تجعل حتى من المنطقي أن تعمل على الشفرة المصدرية دون جافادوك منذ المخططات وتصفح الشفرة المصدرية يمكن أن تساعد في فهم كود حتى من دون وثائق. ومنذ أداة جافادوك تتجاهل علامات غير معروفة حتى يمكنك استخدام العلامات Doxygen إضافية دون كسر الجيل جافادوك.

وبعد كل هذا يجب أن أعترف بأنني لم تستخدم Doxygen لفترة طويلة. أنا أميل إلى الاعتماد بشكل كبير على IDE بلدي في هذه الأيام لتقديم نفس التصور وأنا عادة لا أقرأ جافادوك كصفحات HTML ولكن استيراد ملفات المصدر إلى IDE بلدي حتى أنها يمكن أن تولد flyouts جافادوك وأنا يمكن أن تقفز إلى التعاريف. هذا هو أكثر قوة مما لديها Doxygen لهذا العرض. إذا كنت تريد أن يكون التوثيق خارج IDE وسعداء لتشغيل الأدوات غير جافا ثم Doxygen يستحق المحاولة لأنه لا يتطلب أي تغيير إلى رمز جافا.

نصائح أخرى

وكنت فقط استخدام Doxygen مع جافا إذا كنت جديدا على جافا وكنت قد استخدمت Doxygen قبل، مما يقلل من منحنى التعلم كنت تواجهها مع جافادوك. إذا كنت لم تستخدم Doxygen من قبل، فما استقاموا لكم فاستقيموا العصا مع جافادوك، لأنه تم تصميمه خصيصا مع جافا في الاعتبار. إذا كنت لا تعرف أي واحد، وكنت تعمل في C ++ (أو غيرها من اللغات المعتمدة) بقدر ما كنت تفعل جافا، Doxygen هو خيار جيد، وعليك أن تكون قادرا على استخدامها لكلتا اللغتين.

وكل الأدوات هي سهلة الاستخدام، مع مجموعة ميزة مشابهة. ديهما المحمول (أو هي قبل بنيت في) لنتبيانس والكسوف مما يجعلها أسرع لتوليد الوثيقة هناك الكثير من التداخل في أسلوب تعليق المستخدمة من قبل كل، لكنها ليست <م> بالضبط نفسه، لذلك سيكون من الصعب مزجها معا (كنت قد لمعرفة تفاصيل < م> على حد سواء ، تاركة أي ميزات خاصة إلى واحد أو الآخر). أنا لم تستخدم، ولكن هناك لا يبدو أن هناك مخضرم المساعد لDoxygen .

وأحب حقيقة أنه مع Doxygen، يمكنك الحصول على مخططات الطبقة عرضها على الصفحة نفس الوثائق. أيضا، وأنا أحب أن يربط مباشرة إلى شفرة المصدر، إذا لزم الأمر. أنا لست على علم إذا جافادوك ديه هذه الميزات بالرغم من ذلك.

وميزة واحدة كبيرة من JavaDocs هي أنها مجرد عمل. يتم تضمين كل ما يلزم لبناء وعرضها في JDK التي تحتاج بالفعل إلى تثبيت لتجميع البرامج الخاصة بك.

وDoxygen، من ناحية أخرى يمكن أن يكون الألم لاقامة والحصول على العمل بشكل صحيح. ولكن إذا تم إعداده بشكل صحيح يجب أن تكون قادرة على توليد ملفات PDF، RTFs، وDocBooks، فضلا عن HTML. لا يتم تنظيم HTML وكذلك عن طريق الافتراضي كما JavaDocs منذ index.html وإحضار صفحة فارغة افتراضيا. أيضا، والطبقات المضمنة وأعضاء ثابتة قد تحتاج الأعلام الخاصة ليتم تضمينها في الوثائق، وإذا كنت تريد أن تولد PDF قد تضطر إلى التعامل مع متاعب التوزيع لينكس عدم وجود الأمر pdflatex الحاجة (كان مثل أوبونتو / النعناع مشاكل مؤخرا) حتى لو كنت مجرد الرابطة بين الحصول على تثبيته وتشغيله قد تحصل على شاشة كاملة من الأخطاء حتى مع وجود برنامج بسيط. بالمقارنة مع سهولة الحصول على جافادوك تلقائيا عند تثبيت API، ويمكن إعداد Doxygen أن يكون تجربة بائسة. بمجرد التغلب على العقبات، وينبغي أن تكون أكثر مرونة في التعامل مع المشاريع التي تنطوي على أكثر من مجرد جافا، وإن كان.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top