
في الآونة الأخيرة ، نشر المنشور النرويجي Digi.no قصة حول كيفية عمل مطوري متصفح Vivaldi مع رمز Chromium. في مقابلة مع ثلاثة من كبار المتخصصين في الشركة للمرة الأولى تحدثوا علنًا عن هذا المكون الهام لعملية تطوير متصفح Vivaldi.
شارك ثلاثة من موظفي الشركة في مقابلة مع المنشور النرويجي - إنجفي بيترسين ، وجارلي أنتسن ، وأندريه شولتز. تحدثوا عن كيفية عمل العمل لدمج كود متصفح Vivaldi و Chromium kernel المستخدم في المتصفح - حول مزايا وعيوب هذا النهج ، بالإضافة إلى المشاكل التي تنشأ وكيفية التعامل معها.
فيما يلي ترجمة إلى الروسية لأهم الأسئلة والأجوبة.
(باتجاه عقارب الساعة من اليسار إلى اليمين) Harald Brombach من Digi.no و Jarle Antonsen و Ingve Pettersen و Andre Schulz.
هل مشكلة الحجم الكبير والتكرار القصير لتحديث كود نواة Chromium؟
Yngwe Pettersen (المهندس الرئيسي) : يتم إصدار نسخة جديدة من Chromium كل ستة أسابيع ، ونحن بحاجة إلى دمج كود Vivaldi الخاص بنا مع رمز هذه النواة. أنا منخرط في هذه المهمة ، وأنا مسؤول عن قاعدة بيانات المتصفح. و - نعم ، هذه مهمة معقدة وتستغرق وقتًا طويلاً وتستغرق عدة أسابيع.
هل هناك أي تقدم في هذا العمل؟
Jarle Antensen (مدير المشروع) : في السابق ، كانت عملية التكامل تستغرق من ثلاثة إلى أربعة أسابيع ، لكن مطوري Vivaldi تمكنوا من دمج الإصدارين الأخيرين من Chromium (68 و 69) في أقل من أسبوعين. كانت المشكلة الرئيسية هي الانحدارات - عندما توقف رمزنا عن العمل مع رمز Chromium ، وكان تصحيحها هو الذي يستغرق الوقت الرئيسي.
كيف العمل مع مجتمع Chromium؟
أندريه شولتز (مطور واجهة المستخدم) : لفرحنا ، إنه منتج للغاية. أرسل أسئلة باستمرار إلى مطوري الوحدات المختلفة وأحصل على إجابات مفصلة للغاية ، وأحيانًا حتى مع اقتراحات حول كيفية جعل الوحدة تعمل بشكل أفضل.
هل تساهم في تطوير Chromium؟
Yngwe Pettersen : على مدى الأشهر الستة الماضية ، أرسلنا عشرات التصحيحات لرمز Chromium. هذه في الغالب اقتراحات لتنظيف الرمز ، ولكن كانت هناك أيضًا إصلاحات للأخطاء. نحن الآن بصدد إعداد بعض التصحيحات لإرسالها إلى مطوري Chromium.
جارلي أنتونسن ، إنجيف بيترسين ، أندريه شولتز.ما مدى تعقيد وطول عملية تكامل الكود؟
Ingve Pettersen : بعد إصدار تحديث Chromium التالي ، أقوم بإنشاء فرع جديد منفصل وأبدأ في العمل معه. أقوم باستخراج رمز Chromium ومزامنة جميع الوحدات الفرعية التي نستخدمها ، أثناء إجراء تغييرات طفيفة. هذا الجزء من العملية مؤتمت بشكل جيد معنا.
ثم نقوم بنسخ جميع تحديثاتنا أعلى قاعدة كود Chromium. هناك الكثير من الأعمال اليدوية منذ ذلك الحين نحصل على عدد قليل من الانحدارات وتعارضات دمج التعليمات البرمجية. كان هذا يمثل مشكلة كبيرة ، ولكن مع مرور الوقت ، قمنا بتنظيف الشفرة جيدًا من العناصر التي تسببت في الصراعات ، واليوم أصبح كل شيء أبسط بكثير. على سبيل المثال ، خلال التحديث الأخير ، أجرينا تغييرات على ما يقرب من 900 ملف ، وكان 80 ملفًا فقط يتطلب التحرير اليدوي للكود. استغرق الأمر مني حوالي خمس إلى ست ساعات للقيام بذلك - كان الأمر يستغرق أسبوعًا على الأقل.
بعد دمج الرمز ، تحتاج إلى تجميع رمز المتصفح لمختلف الأنظمة الأساسية - Windows و Linux و Mac. كقاعدة ، يستغرق هذا يومًا واحدًا أو حتى عدة ساعات. بشكل عام ، تستغرق عملية دمج التعليمات البرمجية يومين إلى ثلاثة أيام اليوم.
كيف يتم تحديد المشاكل الجديدة؟
Ingve Pettersen : في الواقع ، في عملية دمج الكود ، تظهر أخطاء بالفعل ، لتصحيحها يجب عليك إجراء تغييرات على كود وحدات Vivaldi. قد يستغرق هذا بعض الوقت.
بعد ذلك ، بدأ Andre و Jarle والمطورين الآخرين في إصلاح المشكلات التي تم اكتشافها ، بالإضافة إلى المشكلات الجديدة التي تم تحديدها بالفعل أثناء اختبار متصفح Vivaldi.
ما مدى تعقيد هذه العملية؟
أندريه شولز : نعم ، التغييرات في Chromium هي الأكثر صعوبة في عملنا. بضع مرات أوقفنا الأعلام لبعض الوظائف وعملنا بالتوازي مع وظائف Chromium ، والتي تمت إزالتها بالفعل من إصدارات النواة التالية. هذا خلق الكثير من المشاكل بالنسبة لنا. حدثت الحالة الأكثر صعوبة أثناء الترقية إلى Chromium 64 core واستغرق منا الكثير من الوقت لإصلاحها ، مما أثر على التباطؤ في إصدار إصدارات جديدة من متصفح Vivaldi.
Yngwe Pettersen : بعد إصلاح المشاكل التي نشأت أثناء دمج النواة الجديدة ، نواصل العمل على استكشاف الأخطاء وإصلاحها وحتى نحصل على إصدار ثابت كافي مناسب للإصدار كمنتج نهائي.
كيف تسير الأمور مع إضافة ميزات جديدة إلى المتصفح؟
Yngwe Pettersen : نعم ، نحن لا نتوقف عن العمل على الميزات الجديدة ، لذا فإن رمز Vivaldi الرئيسي يتغير ويختبر باستمرار. في كل مرة يضيف أحد المطورين تغييرات إلى الرمز ، يتم إنشاء تجميع جديد تلقائيًا. يتم اختبار هذه التجميعات بنشاط أولاً من قبل الشركة ومختبري Sopranos من الجهات الخارجية ، ثم من قبل مستخدمي التجميعات التجريبية العامة للمتصفح ، وفي النهاية يقرر قسم ضمان الجودة ما إذا كنا على استعداد لإصدار الإصدار النهائي.
توظف Vivaldi حاليًا حوالي 20 مطورًا. لا أعرف بالضبط عدد المطورين المشاركين في تطوير Chromium ، ولكن بالطبع هناك الكثير منا. يمكنك محاولة مقارنة عدد التغييرات في الرمز التي أجراها الفريقان مؤخرًا.
في غضون خمس سنوات ، أجرينا أكثر من 17000 تغيير على رمزنا الأساسي. على مدار العام الماضي ، قمنا بإجراء أكثر من 2700 تغيير. للمقارنة ، بين Chromium 67 و 68 ، تم إجراء حوالي 12000 تغيير على رمز Chromium ، وبين الإصدارات 68 و 69 كان هذا الرقم بالفعل حوالي 15000 تغيير. بعبارة أخرى ، أجرى فريق تطوير Chromium العديد من التغييرات في أيام قليلة كما فعلنا في الكود الخاص بنا على مدار العام. لذلك ، أقدر عدد مطوري Chromium النشطين بحوالي 600 شخص.
جارل أنتنسن : كقاعدة ، يستغرق الأمر بعض الوقت من الفكرة إلى تنفيذ وظيفة جديدة. في فريق صغير ، من الأسهل تجنب البيروقراطية المفرطة. في الوقت نفسه ، يشارك جميع أعضاء الفريق تقريبًا بنشاط في اختبار الميزات الجديدة ، بما في ذلك مدير الشركة Jon von Techner. وبالطبع ، تعتمد عملية إضافة ميزات جديدة إلى حد كبير على طلبات المستخدمين - تعتبر توصياتهم وملاحظاتهم ضرورية لعملنا.
(باتجاه عقارب الساعة من اليسار إلى اليمين) جارلي أنتونسن ، إنجيف بيترسين ، أندريه شولتز ، هارالد برومباخ.المقالة الأصلية