أظهرت إحدى الدراسات أن Rust يسهل على المطورين الجدد الانضمام إلى المشاريع مفتوحة المصدر

شعار الصدأ

Rust هي لغة برمجة متعددة النماذج ، للأغراض العامة ، مجمعة.

قبل أيام قليلة، تم الإعلان عن خبر حول نتائج التحقيق فيها يُظهر أن Rust لديه القدرة على جذب وتسهيل وصول جديد دافعي الضرائب لمشاريع مفتوحة المصدر، مع الاعتراف بالحد من نقاط الضعف.

الدراسة قام بها أعضاء من جامعة واترلو، كندا من خلال دراسة مشروع الأكسدة الخاص بموزيلايكشف المؤلفون أن لغة Rust تقلل بشكل كبير من احتمال قيام مساهمين جدد بإدخال ثغرات أمنية في التعليمات البرمجية، مقارنة بلغة C++.

وبالإضافة إلى ذلك، يذكر أن البحث يقوم أيضًا بتقييم نقاط الضعف في Rust في المشاريع مفتوحة المصدر ويقيس فعالية خوارزمية SZZ في تحديد الأخطاء المسببة للخطأ.

وليس من المستغرب أن تكون Rust بالفعل من بين أفضل لغات البرمجة التي يفضلها الكثيرون، فضلاً عن كونها واحدة من أكثر اللغات الموصى بها للمبتدئين في عالم البرمجة.

بالنسبة لأولئك الذين لا يزالون غير مدركين لـ Rust، يجب أن تعلم أن هذه لغة برمجة مجمعة متعددة النماذج تم تصميمها وتطويرها بواسطة Mozilla Research منذ عام 2010. وقد تم تصميمها لتكون "لغة عملية ومتزامنة وموثوقة"، تدعم النماذج الوظيفية البحتة. ، الجهات الفاعلة، الإجرائية والموجهة نحو الكائن في جوانب معينة. نظرًا لسياسة Mozilla، تم تطوير Rust بشكل مفتوح تمامًا ويطلب التعليقات والمساهمات من المجتمع. تم تحسين تصميم اللغة تدريجيًا بفضل تعليقات الفريق، حيث تأتي معظم المساهمات من المجتمع.

وذكر جماعة الباحثين في منشور له بعنوان «التصنيف على منحنى: كيف يمكن للصدأ أن يسهل المساهمين الجدد مع تقليل نقاط الضعف"، ماذا يعد المساهمون الجدد ضروريين للمشاريع مفتوحة المصدر، ولأنه بدونهم، سيضمر المشروع في نهاية المطاف ويصبح خاملاً، أو سيحرف المساهمون ذوو الخبرة اتجاهات المشروع المستقبلية.

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

لتحديد ما إذا كان بإمكان Rust المساعدة في منع المساهمين الجدد من إدخال ثغرات أمنية وبالتالي تخفيف العبء على المشرفين، قمنا بفحص مشروع Mozilla's Oxidation، الذي استبدل مكونات متصفح الويب Firefox بمكافئات مكتوبة بلغة Rust.

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

لقد وجدنا أنه على الرغم من المخاوف المتعلقة بقابلية الاستخدام، فإن المساهمين الجدد في مشاريع Rust هم أقل عرضة بحوالي 70 مرة لإدخال ثغرات أمنية من المساهمين الجدد في مشاريع C++.

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

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

أخيرا إذا كنت مهتمًا بمعرفة المزيد عنها، يمكنك التحقق من التفاصيل في الرابط التالي.


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.