الأخبار التكنولوجية والاستعراضات والنصائح!

جودة الكود لا تعني الكثير في مساهمات المصادر المفتوحة: دراسة

يمكن أن يتخيل ne أن المساهمات في مشاريع مفتوحة المصدر سيتم تقييمها على جودة الكود أعلى من أي شيء آخر. ومع ذلك ، فقد وجد الباحثون العكس تماما!

في ورقة بعنوان "هل تؤثر جودة الكود على قبول طلب السحب؟" ، والمقدمة إلى مجلة "تكنولوجيا المعلومات والبرمجيات" ؛ حاول الباحثون تحديد ما إذا كانت مشكلات جودة الكود مثل – الشفرة المكررة والطرق الطويلة والفئة الكبيرة وانتهاك نمط الكود وما إلى ذلك – تؤثر على فرص قبول طلب السحب من قِبل مشرف المشروع.

جامف الآن

قام الباحثون فيلي نيكولا ونييتي ساريماكي وفالنتينا ليناردوزي ودافيدي تايبي بتحليل ما مجموعه 28 مشروعًا مفتوح المصدر لجافا ، والتي تضمنت 4.7 مليون مشكلة في جودة الكود في 36000 طلب سحب.

تم قبول الغالبية منهم

من بين هذه المشاريع الـ 28 ، كانت 22 شركة تديرها مؤسسة Apache Software Foundation. تم اختيار الستة الآخرين من قائمة GitHub من مستودعات Trending Java لغرض هذه الدراسة.

تم قبول ما مجموعه 19293 ، أي تم قبول 53.08٪ من إجمالي طلبات السحب ، وتم رفض 17،051 (46.92٪) من الطلبات.

تجدر الإشارة إلى أن معدل القبول يختلف عن المشروعات المختلفة. أظهر مشروع Apache Phoenix نسبة قبول بلغت 9.85 ٪ في حين أن مشروع Apache Helix بدا أقل انتقائية من خلال قبول 90.85 ٪ من طلبات السحب.

السمعة أكثر أهمية من صحة الكود

نشر الباحثون تقنيات تعلم الآلة المختلفة لتقييم الشفرة. اقترحت أداة تحليل برامج PMD أن جودة الشفرة لم تؤثر حقًا على فرص قبول طلب السحب على الإطلاق.

جامف الآن

لكن السمعة تهم كثيراً ويبدو أن شخصية المجتمع المحترم لها وزن أكبر من جودة الشفرة وتصحيحاتها.

في الواقع ، هناك عوامل أخرى مثل "أهمية الميزة المقدمة قد تكون أكثر أهمية من جودة الكود من حيث قبول طلب السحب".

هذا ما يفسر لماذا لدينا المزيد من الأخطاء

تتناول الدراسة حقيقة قاسية بين المطورين والتي لا يتم الاعتراف بها في كثير من الأحيان – أنه طالما تم إنجاز المهمة ، فغالبًا ما تأخذ جودة الكود في المقعد الخلفي.

ومع ذلك ، من المدهش أن المطورين على ما يرام مع عرض رمزهم الرهيب للمجتمع.

لكن الجزء الأكبر من اللوم يقع على عاتق المشرفين في الغالب لأنهم يميلون إلى البقاء مرتبطين بالمشروع لفترة أطول من المشاركين. ويجب أن يكونوا أكثر قلقًا بشأن جودة الشفرة لأي شيء يرون أنه يستحق القبول.