مشروع Open3D

تحتوي هذه الصفحة على تفاصيل مشروع كتابة تقنيّة تم قبوله في موسم المستندات من Google.

ملخص المشروع

المؤسسة المفتوحة المصدر:
Open3D
الكاتب التقني:
روهان راثي
اسم المشروع:
المستندات الفنية لواجهة برمجة التطبيقات Python وC++
مدة المشروع:
المدة العادية (3 أشهر)

وصف المشروع

الملخص:

سيقسم المشروع إلى 4 أجزاء: ترقية دليل مساهم Open3D وتوسيعه إكمال وثائق واجهة برمجة التطبيقات Python الوثائق الكاملة لواجهة برمجة التطبيقات C++ مستندات عالية المستوى لهياكل البيانات الأساسية

الوصف:

في مشروعي أخطط لتقسيم المشروع إلى 4 أجزاء:

أخطّط لإكمال دليل المساهمين وتعديله للمبتدئين، والذي يقدّم دليلاً مفصَّلاً خطوة بخطوة حول كيفية إنشاء رمز المصدر وإعداد المستندات والانضمام إلى منتدى المطوِّرين. بالإضافة إلى دليل مكتوب، نعتزم إنشاء فيديو يعرض الخطوات الدقيقة حول كيفية إنشاء شفرة المصدر لقناة YouTube. سأضيف أيضًا دليلاً حول كيفية مساهمة المطوّرين الجدد في المستندات من خلال إجراء تغييرات على رمز المصدر الذي أنشأه sphinx باستخدام pybind وDoxygen.

توسيع وثائق واجهة برمجة التطبيقات Python. تحتوي واجهة برمجة تطبيقات Python حاليًا على سلاسل مستندات أساسية للفئات ووظائف الأعضاء والتي تقدم وصفًا غامضًا للوظيفة. أخطط لإعادة صياغة وثائق واجهة برمجة التطبيقات Python API لتسهيل فهم واجهة برمجة التطبيقات ووظائفها أكثر وضوحًا. أنوي أيضًا إضافة روابط إلى مفاهيم الرسومات ثلاثية الأبعاد ذات الصلة المستخدَمة في مناطق مختلفة (مثلاً: المصفوفة الأساسية المستخدَمة في الكاميرا)

أكمل وثائق واجهة برمجة تطبيقات C++. لا توجد حاليًا سلاسل مستندات مكافئة في وثائق C++ مقارنة بوثائق Python. أنوي توثيق الصفوف ووظائف الأعضاء المرتبطة بها وأعضاء البيانات بالتفصيل .

المستندات ذات المستوى العالي والمنخفضة لهياكل البيانات الأساسية. أعتزم فهم الرمز البرمجي لهياكل البيانات المختلفة مثل TriangleMesh وLineSet وCorree وإضافة تعليقات إلى قاعدة الرموز، وذلك لفهم المطوّرين الجُدد وأي مستخدمين. بالإضافة إلى توفير وثائق عالية المستوى حول الاستخدام والمفاهيم المتضمنة في الهياكل من خلال تحسين البرامج التعليمية. سأقدم أمثلة مفصلة عن الاستخدام وأضف روابط ذات صلة للمفاهيم المتضمنة في الهياكل. إذا سمح الوقت، فسأعمل بعد ذلك على مهام أكثر بساطة مثل توثيق كيفية أداء مهام معينة يمكن أن تساعد المستخدمين الجدد في الانتماء إلى البرنامج.

الجدول الزمني للمشروع-

1 أغسطس - 1 سبتمبر:

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

الأسبوع 1 و2:

سأقوم بتحديث دليل المساهمين وتمديده. سأحسّن الوثائق المتعلقة بكيفية إنشاء رمز المصدر. سأضيف أيضًا قسمًا للموثّقين حول كيفية مساعدة المساهمِين الجدد في التوثيق. سأُنشئ أيضًا فيديو على YouTube يحدّد بالتفصيل كيفية إنشاء رمز المصدر.

الأسبوع 3 - 5:

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

الأسبوع 6 - 8:

مستندات C++ الحالية غير مكتملة في معظم أجزاء المكتبة، لذلك سأقضي معظم الوقت في ملء مستندات C++

الأسبوع 9 - 11:

خلال هذه الفترة، سأعمل على هياكل البيانات الأساسية. إعادة هيكلة البرامج التعليمية لكل هيكل بيانات، وتقديم نظرة عامة عالية المستوى وكذلك توثيق تفاصيل استخدام مثال.

الأسبوع الأخير:

سأستخدم الأسبوع الأخير لإعداد تقريري النهائي عن العمل المنجز خلال فترة التوثيق التي تبلغ 12 أسبوعًا. سأقضي هذا الوقت أيضًا لمراجعة الوثائق ووضع اللمسات الأخيرة عليها.