عودة إلى أخبار المطوّرين

Meet the Developers - React @ Meta Edition (فيتالي توبوليوك)

٢٨ يونيو ٢٠٢٣بواسطة‏‎Suraj Subramanian‎‏

تمت كتابة هذا المقال بالتعاون مع فيتالي توبوليوك، مهندس برامج في Meta، وشون كيجان، مؤيد المطوّرين في Meta.

في مقابلة اليوم، معنا فيتالي توبوليوك، وهو مهندس برامج في فريق تطبيق Messenger لأجهزة الكمبيوتر في Meta. يعمل فريق فيتالي على إصدار Messenger لأجهزة الكمبيوتر، والذي يمكّنك من إرسال الرسائل النصية وإجراء المكالمات والاتصال مباشرةً من الكمبيوتر.

حدّثنا عن نفسك؟

اسمي فيتالي توبوليوك وأنا أعمل كمهندس برامج في فريق تطبيق Messenger لأجهزة الكمبيوتر. نطوّر إصدارات Windows وmacOS لتطبيق Messenger منذ آخر ثلاث سنوات، وكنا نستخدم في آخر سنتين React Native.

إلى أي مدى يستخدم تطبيق Messenger لأجهزة الكمبيوتر React؟

يتم تشغيل التطبيق بدعم من إطار عمل React Native.

ما بعض المشاريع التي عملت عليها في Meta والتي تستخدم React؟

تطبيق Messenger لأجهزة الكمبيوتر والمشروعات المشتقة: Work Chat لأجهزة الكمبيوتر وWorkrooms لأجهزة الكمبيوتر.

لماذا اختار فريقك استخدام React وكيف يساعدك استخدام React أنت وفريقك في تحقيق أهداف التطوير؟

تم تطوير التطبيق استنادًا إلى إطار عمل Electron والذي شجعنا للغاية في البداية. للأسف، وصلنا لسعة استخدام Electron بشكل سريع للغاية واضطررنا إلى إنفاق الكثير لتلبية متطلبات الأداء والاعتمادية والكفاءة (PRE). بالإضافة إلى ذلك، كان Electron يقيد ميزات التطبيق.

ما الذي كنت متحمسًا بشأنه أو فخورًا به بشكل هائل مؤخرًا؟

عن طريق الانتقال إلى React Native، حللنا العديد من مشكلات PRE وقمنا بتحسين تجربة المطوّرين إلى حدٍ كبير. سمح لنا React Native بإعادة استخدام 80% من قاعدة الرموز وتحسين الكثير من أدوات قياس PRE. فيما يلي أدناه بعض من التحسينات التي حققناها عن طريق الانتقال إلى استخدام React Native للتطبيق بدون أي استثمار إضافي في PRE مقابل تطبيق Electron الموجود والذي كنا نركز على تحسينات PRE فيه على مدار ثلاثة أشهر:

تطبيق Windows:

الوصول أثناء التعطل: -60%

نسبة نجاح التشغيل الكلي: 97% (88% بالنسبة إلى Electron)

زمن الاستجابة عند تشغيل P90 من البداية: -50%

حجم البيانات الثنائية: -80%

تطبيق MacOS:

الوصول أثناء التعطل: +59%

نسبة نجاح التشغيل من البداية: 99% (95% بالنسبة إلى Electron)

زمن الاستجابة عند تشغيل P90 من البداية: -60%

حجم البيانات الثنائية: -70%

هل هناك شيء مثير بشكل خاص حول دورك كمطوّر React في شركة مثل Meta؟

نعم، في Meta، لدينا فرصة لإظهار إمكانية استخدام React Native لتطوير تطبيقات عبر المنصات لأجهزة الكمبيوتر.

ما الذي تشعر بالحماس لرؤيته في مستقبل React؟

أتمنى استبدال React Native بـ Electron في المستقبل، ولكن لكي ينجح ذلك، يجب تحسين إطار العمل لتضمين المزيد من أدوات الإنتاج المتكاملة. على سبيل المثال، لا يستوعب Electron التطبيقات المستندة إلى الويب، ولكنه يحتوي أيضًا على أدوات لتطوير أدوات التثبيت وأدوات التحديث التلقائي والإبلاغ عن الأعطال، وغير ذلك.


نود أن نشكر فيتالي على وقته لإجراء هذه المقابلة. لقد كان من المدهش معرفة كيفية استخدام React لتحسين التطبيقات الكبرى؛ وكيف نتعلم من الأشياء التي نطورها هنا في Meta والمساهمة مرة أخرى في مجتمع React. نأمل أن تكون قد وجدت هذه المقابلة مفيدة وأنها قد أعطتك نظرة ثاقبة حول كيفية استخدام React وجوانب استخدامه في Meta. ابحث عن المزيد من مدونات المقابلات حيث نجتمع مع مهندسي Meta ونستمع إلى أفكارهم حول هذا الموضوع.

حول سلسلة Meet the Developers - React @ Meta

React هو أحد أكثر المشاريع مفتوحة المصدر شيوعًا وقد تم تصنيفه طوال الوقت كواحد من أكثر أطر عمل الويب "المحبوبة" على مدار السنوات العديدة الماضية. نعتقد في Meta أن React مكتبة رائعة تساعد المطوّرين في تطوير واجهات المستخدم بسهولة وعلى نطاق واسع. يتم استخدام React من قبل ملايين المطوّرين في جميع أنحاء العالم، وفي كل شيء بدءًا من مواقع الويب البسيطة وحتى تطبيقات المؤسسات، وهي مكتبة مفتوحة المصدر تناسب الجميع.

تُعد هذه المدونة جزءًا من سلسلة Meet the Developers، حيث ندعو مهندسي Meta الذين يستخدمون React بشكل منتظم إلى مشاركة تجاربهم وإخبارنا عن المنتجات المذهلة التي يطورونها. ابحث عن المزيد من مدونات المقابلات حيث نجتمع مع مهندسين آخرين ونستمع إلى أفكارهم حول هذا الموضوع.

للتعرف على المزيد حول Meta Open Source، تفضل بزيارة الموقع مفتوح المصدر أو يمكنك الاشتراك في قناتنا على يوتيوب، أو متابعتنا على تويتر وفيسبوك ولينكدإن.