نشرت جوجل قبل فترة قليلة من تاريخ هذه المشاركة ، مقارنة ملفتة للنظر بين ++C و Java و GO و Scala . المقارنة تناولت جوانب عديدة ، بدايةً من توفير بيئة اختبار عادلة مروراً بعمل مقارنات على أمور كثيرة من عدد سطور الكود حتى مستوى آداء التطبيق وقت التنفيذ . قرأت الورقة التي نشرت بهذا الخصوص ( قراءة سريعة ) ، و هذه أهم الأمور التي يمكن أن ألاحظها :
- تم استخدام خصائص مشتركة بين لغات البرمجة المذكورة مثل : المصفوفات - الحلقات التكرارية - هياكل البيانات - الكائنات - الخ .. ولم يتم استخدام مزايات تخص لغات معينة مثل : Multithreading أو Parallel Programming .
- في ++C مثلاً تم استخدام Containers المعروفة مثل std::vector و std::map أما في الجافا ، فأيضاً تم استخدام Collections المعروفة مثل List و Map ، مع الاستفادة من Generic ، وهكذا مع Scala و GO .
- يبدو أنهم استخدموا خورازميات ما ، لعمل تلك المقارنة ، تم كتابة تلك الخوارزميات بنفس الطريقة تقريباً . حتى التعليقات و عدد السطور ، حاول الفريق أن تكون متطابقة بين كل اللغات المذكورة ، و استخدموا Coding style الخاص بكل لغة ، ( أو شيء متعارف عليه عموماً ) ..
- هناك نسخ محسّنة من الأكواد ، قد تجدها تنتهي بـ pro ، هذه حسنها مهندسوا Google ، ويبدو أنها أضيفت إلى النتائج ، ولا أظن أن الكود المصدري متوافر ، لأن Google تغلق مصدر بعض الأكواد !
- عدد سطور الكود في كل لغة ( حجم الكود ) :
- حجم الملف التفيذي أو حجم ملف Jar الناتج :
- وقت الترجمة لتحويل الملف إلى ملف تنفيذي - ( في حالة Jar ، وقت تحويل الكود إلى byte codes ) :
- الحجم المستهلك في الذاكرة :
- آداء التطبيق وقت التشغيل :
- الوثيقة ، فيها تفاصيل أكثر ، تجدها كرابط في هذا الموقع :
http://www.readwrite...e-benchmark.php
- أو يمكن تحميلها من المرفقات :
- الأكواد المستخدمة ، طبعاً لن تجد cpp_pro ، لأنها مغلقة المصدر من Google






