توزيع لغة البرمجة
السؤال: ما هي لغات البرمجة المختلفة الموجودة في المشاريع مفتوحة المصدر، وما هي نسبة كل لغة؟
نظرة عامة
يحدد مقياس توزيع لغات البرمجة لغات البرمجة المختلفة المستخدمة في المشروع ونسبة الكود المكتوب بكل لغة. وهذا يعطي نظرة ثاقبة على المهارات الفنية المطلوبة من المساهمين وتركيز المشروع. ويسلط الضوء على كيفية تطور المشروع، وخاصة فيما يتعلق باللغات التي يعتمد عليها.
يساعد هذا المقياس أصحاب المصلحة المتعددين:
- المطورون والمساهمون الجدد: يساعد هذا المقياس المبتدئين في تحديد ما إذا كان المشروع يتوافق مع مجموعة مهاراتهم. ويمكن للمطورين استخدام هذا المقياس للعثور على المشاريع التي تستخدم بشكل مكثف اللغات التي يجيدونها، والتي قد تدعم عمليات البحث عن الوظائف أو تطوير المهارات.
- إدارة المشاريع: يمكن لمكاتب برامج المصدر المفتوح (OSPOs) ومديري المشاريع استخدام هذا المقياس لفهم المشروع، ورؤية اتجاهات اللغة بمرور الوقت، وتقييم المهارات اللازمة للحفاظ على المشروع وتطويره.
- تطور المشروع: بمرور الوقت، قد يتغير توزيع لغة المشروع مع تغير التركيز. على سبيل المثال، قد يكون المشروع عبارة عن X% Python وY% JavaScript في عام واحد، لكنه يتطور ليصبح لديه نسبة أكبر من JavaScript مع نمو تطوير واجهة المستخدم.
- التنوع والتضمين: يمكن للمشاريع التي تضم مجتمعات متنوعة وشاملة أن تعكس هذا من خلال توزيعها اللغوي، واستيعاب المساهمين ذوي المهارات اللغوية المختلفة.
اريد معرفة المزيد؟
انقر هنا لقراءة المزيد حول هذا المقياس.
استراتيجيات جمع البيانات
يمكن جمع توزيع لغات البرمجة من خلال التكرار عبر الملفات الموجودة في المستودع وتحديد لغة كل ملف من خلال امتداده. يعتمد هذا المقياس على امتدادات اللغة القابلة للتحديد، ولكن إذا كانت اللغة غير معترف بها (على سبيل المثال، في حالة اللغات الأحدث)، فقد يتم تصنيف الملفات مؤقتًا على أنها "أخرى". تعمل المكتبات، مثل تلك التي يستخدمها Augur، على أتمتة هذه العملية. على سبيل المثال، يستخدم Augur مجلس التنسيق الأعلى لحساب توزيع اللغة.
ينبغي إعطاء اعتبار خاص لأنواع معينة من الملفات، مثل Jupyter Notebooks، حيث قد يحجب امتداد الملف اللغة الفعلية المستخدمة داخل دفتر الملاحظات.
- المعلمات
- عدد الملفات: العدد الإجمالي للملفات المكتوبة بكل لغة برمجة.
- أسطر التعليمات البرمجية (LOC): نسبة أسطر التعليمات البرمجية المكتوبة بكل لغة.
- يمكن للمقياس أن يعرض عدد الملفات أو أسطر التعليمات البرمجية كقيم مطلقة أو نسب مئوية.
- على سبيل المثال، قد يكون أحد المشاريع عبارة عن X% Python من حيث الملفات وY% Python من حيث أسطر التعليمات البرمجية.
يساعد كلا المعاملين في تحليل توزيع اللغة، ولكن اعتمادًا على السياق، قد يكون أحدهما أكثر فائدة من الآخر. غالبًا ما يكفي عدد الملفات البسيط للحصول على نظرة عامة، بينما توفر أسطر التعليمات البرمجية مزيدًا من التفاصيل، على الرغم من أنه قد يكون من الصعب تفسيرها.
فلاتر
- الوقت:
-
عدد الملفات - عدد ملفات كل لغة.
-
أسطر التعليمات البرمجية - النسبة المئوية لأسطر التعليمات البرمجية لكل لغة.
يمكن تقديم أسطر التعليمات البرمجية أو الملفات كأرقام مطلقة أو نسب مئوية، اعتمادًا على تطبيق المقياس. في كثير من الحالات، يكون التعداد البسيط للملفات مفيدًا، بينما قد يكون من الصعب التمييز بين العدد المطلق لأسطر التعليمات البرمجية لأن الأرقام أكبر بكثير.
المرئيات
- لا شيء محدد
مراجع حسابات
المساهمين
- داون فوستر
- بيث هانكوك
- مات جيرمونبريز
- إليزابيث بارون
- دانيال إزكويردو
- كيفن لومبارد
- شون جوجينز
- ييغاكبووا ل. صموئيل (الأول)
معلومات اضافية
- لتحرير هذا المقياس، يرجى قم بتقديم طلب التغيير هنا.
- للإشارة إلى هذا المقياس في البرامج أو المنشورات، يرجى استخدام عنوان URL الثابت التالي: https://chaoss.community/?p=3430.
قد يؤدي استخدام المقاييس الصحية ونشرها إلى انتهاكات الخصوصية. قد تتعرض المنظمات للمخاطر. قد تتدفق هذه المخاطر من الامتثال للائحة العامة لحماية البيانات في الاتحاد الأوروبي ، أو مع قانون الولاية في الولايات المتحدة ، أو مع قوانين أخرى. قد تكون هناك أيضًا مخاطر تعاقدية ناتجة عن شروط الخدمة لموفري البيانات مثل GitHub و GitLab. يجب فحص استخدام المقاييس بحثًا عن المخاطر ومشكلات أخلاقيات البيانات المحتملة. لطفا أنظر وثيقة أخلاقيات البيانات CHAOSS للحصول على إرشادات إضافية.