الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

Epydoc 101

بدأه ahmed_youssef في 9 ديسمبر 2009 · 2 رد · 781 مشاهدة · في لغة Python
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

epydoc اداة لتوليد الوثائق لوحدات بايثون بناء على سلاسل التوثيق ال docstrings

وهناك لغة ترميز epytext تستطيع استخدامها لتجهيز سلاسل التوثيق لإضافة معلومات عن الوحدات والكلاسات والدوال عن الحقول الخاصة كالparameters وال instance variables

نبدأ بمعلومات عن الوحدة

"""
    Created by U{Epydoc<http://epydoc.sourceforge.net>}
    @author: Ahmed Youssef
    @license: GPL v3
    @summary: simple moduel for testing epydoc

"""

اولا U

U{text<target>}

بتتكون من النص الظاهر على اللينك واللينك الهدف

@author

اسم الكاتب

@license

الرخصة

@summary

الملخص

فى fields كتير تقدر تراجعها هنا

http://epydoc.sourceforge.net/fields.html#fields

هنعمل مثالين على دالة وعلى صف

دالة المضروب

def factorial(n):
    """
    factorial of a positive integer n, denoted by n!, is the product of all positive integers less than or equal to n


    @type  n: number
    @param n: number to calculate the factorial for.
    @rtype:   number
    @return:  the factorial (the product of all positive integers less than or equal to n)

    """
    return math.factorial(n)

فى البداية بنكتب وصف للدالة وبعد كدا المعاملات بنحدد ليها النوع والوصف عن طريق @type, @param

ونحدد نوع الناتج من الدالة عن طريق @rtype ووصف العائد من الدالة عن طريق @return

*لاحظ ان الدالة بتستخدم دالة factorial الموجودة فى وحدة math

نيجى للصفوف

class Human(object):
    """
        Humans are a Cancer of the Earth
@ivar name: a language unit by which a person or thing is known    
@cvar nhands: number of hands
    """
    nhands=2
    def __init__(self, name):
        """
        Initializing instance variables

        @type  name: str 
        @param name: a language unit by which a person or thing is known    
        @rtype:   None

        """
        self.name=name

اولا عندنا وصف للكلاس ومتغيرات الكائن instance variables معرفة عن طريق @ivar والمتغيرات الخاصة بالصف عن طريق @cvar

بس بعد كدا عليك تنفيذ الأمر epydoc او استخدام epydocgui لانشاء التوثيق

epydoc module.py

راجع epytext للمزيد حول الفقرات والقوائم والأقسام وغيرها

http://epydoc.sourceforge.net/epytext.html

مشاريع مرتبطة

http://epydoc.sourceforge.net/relatedprojects.html

تم تعديل هذه المشاركة بواسطة ahmed_youssef في 9 ديسمبر 2009 في 04:35

1
(map share people)

فضلا لاتقم بمراسلتي من أجل أسئلة لها أقسامها في المنتدى حتى تعم الفائدة على الجميع وللحصول على إجابات أفضل من أعضاء أكثر خبرة.
Weblog
@bitbucket
@xmonader

#2

شكرا على الموضوع

في الحقيقة epydoc يتبع اسلوب javadoc و هو اسلوب لا يعجبني كثيرا في التوثيق. افضل اسلوب sphinx و هو الاداة اللتي تستخدمها لغة بايثون للتوثيق الرسمي

http://sphinx.pocoo.org/

لكنه في الحقيقة مختلف كثيرا عن epydoc لانه لا يولد التوثيق من الـ docstring بل من ملفات توثيق منفصلة

#3

Sphinx فعلا هى الأختيار الأول .. كفاية وثائق بايثون :)

http://docs.python.org/

1
(map share people)

فضلا لاتقم بمراسلتي من أجل أسئلة لها أقسامها في المنتدى حتى تعم الفائدة على الجميع وللحصول على إجابات أفضل من أعضاء أكثر خبرة.
Weblog
@bitbucket
@xmonader

مواضيع مشابهة