التعامل مع التطبيقات متعددة اللغات في React Native
نشرت: 2021-06-23نظرًا لأن قاعدة مستخدمي التطبيق تمتد إلى دول جديدة ، فمن الأهمية بمكان أن يتمكن المستهلكون دائمًا من استخدام التطبيق بلغتهم المحلية. ينبع هذا من حقيقة أن اللغة كانت دائمًا عنصرًا مهمًا في كل شركة ومنظمة. مع توسع الشركة ، فإنها كثيرًا ما تسعى للدخول إلى مدن وولايات وبلدان أخرى. من المهم التوطين لتلبية احتياجات ومتطلبات السكان المحليين ، وهنا يأتي دور React Native.
لا يختلف الوضع عندما يتعلق الأمر بتطبيق الهاتف المحمول.
في هذه المقالة ، سنتعرف أولاً على React Native وتوطين التطبيقات ، ثم سننظر في كيفية مسؤولية React Native localization عن إدارة التطبيقات متعددة اللغات وما هي فوائدها وعيوبها الرئيسية جنبًا إلى جنب مع أمثلة على العديد من التطبيقات الشهيرة متعددة اللغات التي تم صنعها باستخدام React محلي.
ما هو React Native؟

React Native (المعروف أيضًا باسم RN) هو إطار عمل تطبيقات جوال يعتمد على JavaScript يتيح لك إنشاء تطبيقات iOS و Android للهواتف المحمولة. يمكّنك إطار العمل من تطوير تطبيقات للعديد من الأنظمة الأساسية باستخدام نفس مصدر البرنامج.
قراءة المزيد: عرض جانب الخادم مع React
في عام 2015 ، نشر Facebook React Native كمشروع مفتوح المصدر. في غضون سنوات قليلة فقط ، صعد إلى أعلى قائمة تطوير الأجهزة المحمولة وحلول التطوير الهجين .
مع أكثر من 42٪ من مطوري البرمجيات يستخدمون React Native ، أصبح أحد أكثر أطر عمل الأجهزة المحمولة شيوعًا في عام 2020. بعض تطبيقات الهاتف المحمول الأكثر شهرة في العالم ، مثل Instagram و Facebook و Skype ، تم إنشاؤها باستخدام React Native . يمكن للشركات التي تستخدم React Native كتابة التعليمات البرمجية مرة واحدة واستخدامها لتشغيل تطبيقات iOS و Android. هذا يؤدي إلى توفير كبير في الوقت والموارد.
قراءة المزيد: React Native vs Kotlin: كل ما تحتاج إلى معرفته
كيف تتفاعل الوظيفة الأصلية؟
تم إنشاء React Native في مزيج من JavaScript و JXL ، وهي لغة ترميز فريدة مشابهة لـ XML. يمكن أن يتواصل إطار العمل مع الخيوط في كلا العالمين - سلاسل الرسائل المستندة إلى JavaScript وسلاسل التطبيق الأصلية الموجودة.
للتواصل ، تستخدم React Native ما يسمى بـ "الجسر". بينما يتم إنشاء خيوط JavaScript و Native بلغات منفصلة بالكامل ، يستخدم React Native جسرًا لجعل الاتصال ثنائي الاتجاه ممكنًا وعمليًا بدلاً من إنشاء لغة جديدة بالكامل مثل Native و Java.
الحاجة إلى رد الفعل الأصلي

تعد React Native Localisations لتطوير تطبيقات متعددة اللغات متكررة جدًا منذ أن كشفت الدراسات أنه من بين حوالي 7.5 مليار شخص في العالم ، هناك 1.5 مليار يتحدثون الإنجليزية - أي 20٪ من سكان الأرض. علاوة على ذلك ، فإن غالبية هؤلاء الأفراد ليسوا متحدثين طبيعيين للغة الإنجليزية. اللغة الإنجليزية هي اللغة الأولى لنحو 360 مليون شخص فقط.
نتيجة لذلك ، 360 مليون فرد فقط من أصل 7.5 مليار يجيدون اللغة الإنجليزية. يتحدث الآخرون اللغة الإنجليزية كلغة ثانية أو ثالثة. السوق الإجمالي للغات الأخرى أكبر بكثير من سوق اللغة الإنجليزية وحدها.
عندما يكون الجزء الأكبر من الجمهور المستهدف من المتحدثين باللغة الإنجليزية ، فلا بأس من اختبار السوق باستخدام اللغة الإنجليزية. ومع ذلك ، إذا كان الجمهور المستهدف يتحدث لغة مختلفة ، فيجب على المطورين ترجمة التطبيق. مع زيادة شعبية التطبيق ، أصبحت الترجمة ضرورية بشكل متزايد لخدمة الجمهور المحلي.
من الأهمية بمكان أن يتمكن المستخدمون من استخدام تطبيقات مختلفة دون الحاجة إلى تعلم لغة أخرى. يجب على مطوري البرمجيات إحداث تطوير هجين وتعديلات أخرى أثناء كتابة البرامج النصية وإنشاء الرموز للتخلي عن فكرة مطالبة الأشخاص بتعلم اللغة الإنجليزية مسبقًا من أجل تشغيل الكمبيوتر والوصول إلى جميع برامجه. نظرًا لأن العائق الذي يعرقل إنشاء تطبيق أو إنشاء شركة أصبح أقل فأقل ، فإن أسرع طريقة للتنويع هي استخدام تعريب التطبيقات عبر طرق مثل React Native Localization (RNL) لتوفير الترجمة بلغة جمهورك المستهدف.
ما هي أقلمة التطبيق؟
يُعرف إجراء التطوير والتعديل الهجين لمناشدة سوق مستهدف خاص جغرافيًا باسم توطين التطبيقات. يجب على المطورين التأكد دائمًا من أن تطبيق الهاتف المحمول الخاص بهم جذاب وبسيط في الاستخدام خارج مقرهم الرئيسي والبلد كما هو داخله.
يسمح توطين التطبيق بتخصيص التطبيق لاحتياجات المستخدمين الذين يتحدثون لغات مختلفة ، مع كل شيء من وحدات القياس إلى العملات والعبارات الاصطلاحية المناسبة لهم. علاوة على ذلك ، وفقًا للإحصاءات ، يتم استخدام 92 في المائة من أفضل 25 تطبيقًا من تطبيقات iPhone في الصين باللغة الصينية. نفس الشيء هو الحال مع البلدان الأخرى ولغاتهم الأصلية.
لذلك ، من خلال التأكد من أن تطبيق الهاتف المحمول جذاب للمستخدمين في مجموعة واسعة من الأماكن في جميع أنحاء العالم ، يخلق المطورون إمكانية هائلة للنمو لم يكونوا قادرين على تحقيقها في دولة واحدة.
أيضًا ، تتطلب الترجمة الناجحة للتطبيق تعديل العديد من مكونات البرنامج ، بما في ذلك:
- ترجمة اللغة بشكل صحيح وإنشاء تطبيق متعدد اللغات .
- تغيير العملة الافتراضية ، إن أمكن
- التحقق للتأكد من أن الوقت والتاريخ صحيحان لذلك المكان.
- النظر في أي اختلافات في الاهتمامات القانونية
- اختيار لغة لوحة المفاتيح المناسبة
ما هو React Native Localization؟
React Native localization (RNL) هي العملية التي تمكّن مطوري البرامج من ضبط التطبيقات الدولية لمنطقة أو لغة معينة عن طريق ترجمة النص وتضمين المكونات الخاصة بالموقع المحلي. يكون مفيدًا عندما يريد المطور إجراء تعريب التطبيق عن طريق ترجمة التطبيق بشكل صحيح إلى لغة معينة وفقًا لاحتياجات المكان المحدد الذي يتم استخدامه فيه.
فوائد إنشاء تطبيقات متعددة اللغات باستخدام React Native

فيما يلي بعض أسباب استخدام React Native لإنشاء تطبيقات متعددة اللغات :
- قابلية إعادة استخدام الكود - التطوير عبر الأنظمة الأساسية
تعد القدرة على إعادة استخدام التعليمات البرمجية أهم ميزة لـ React Native ، وهي تُظهر أن التطبيقات يمكن أن تعمل بنجاح على منصات مختلفة - وهو أمر يقدره الرؤساء التنفيذيون ومالكو المنتجات حقًا. يمكنهم دمج 90٪ من إطار العمل الأصلي لإعادة استخدام التعليمات البرمجية لأنظمة التشغيل. يفيد هذا المطورين أثناء قيامهم بإنشاء تطبيقات متعددة اللغات حيث يمكنهم إعادة استخدام غالبية التعليمات البرمجية لإنشاء التطبيق بلغات مختلفة.
- مجتمع مطور قوي
React Native عبارة عن منصة JavaScript مفتوحة المصدر تسمح للمطورين بالمساهمة بخبراتهم في تطوير إطار العمل ، وهو متاح لأي شخص. يتيح ذلك للمطورين العثور على الدعم عندما يحاولون إنشاء تطبيقاتهم بلغة غامضة نسبيًا حيث من المرجح أن يحصلوا على دعم المجتمع إذا واجهوا أي مشكلات ؛ لها تأثير مفيد على تطوير قدرات الترميز الخاصة بهم.
- فعاله من حيث التكلفه
ميزة أخرى لتطوير React Native هي انخفاض التكاليف. كما ذكرنا سابقًا ، يرجع ذلك إلى قدرة المطورين على استخدام نفس الكود لإنشاء تطبيقات متعددة اللغات لكل من iOS و Android.
يعني ذلك أن المبرمجين والمطورين لن يحتاجوا إلى إشراك فريقين منفصلين لتطوير iOS و Android لإكمال المشروع ؛ يكفي فريق صغير. تكلفة إنشاء التطبيقات في React Native أقل بكثير من تكلفة تطوير التطبيقات باللغات التي لا تدعم التطوير عبر الأنظمة الأساسية.

- التغييرات مرئية على الفور
يمكن للمطورين استخدام التحديث السريع لتشغيل البرنامج أثناء ترقيته إلى إصدارات جديدة وتعديل واجهة المستخدم. تظهر التغييرات على الفور ، ويتم حفظ المطور من الاضطرار إلى إعادة بناء البرنامج بالكامل. لذلك ، عند الانتقال من لغة إلى أخرى لتطبيق متعدد اللغات ، فإنه يوفر الكثير من الوقت والجهد للمطور.
هذا له ميزتان مهمتان: توفير الوقت (حيث يوفر المبرمجون الوقت في التجميع) وإنتاجية أكبر (لأنهم لا يفقدون أي حالة عند دمج التغييرات في التطبيق).
- واجهة المستخدم مباشرة
يستخدم تطوير React Native React JavaScript لإنشاء واجهة التطبيق ، مما يجعلها أكثر استجابة وأسرع مع وقت تحميل أقل ، مما يؤدي إلى تجربة مستخدم أفضل بشكل عام عندما يتعلق الأمر بالتطبيقات متعددة اللغات. يعتبر إطار العمل مثاليًا لإنشاء تطبيقات ذات تصميمات بسيطة ومعقدة نظرًا لواجهة المستخدم التفاعلية والنهج القائم على المكونات.
- أداء لاذع
يجادل البعض بأن كود React Native قد يكون له تأثير سلبي على أداء تطبيقات الأجهزة المحمولة مقارنةً بالكود الذي تم إنشاؤه عبر Swift والتطبيقات الأخرى. على الرغم من أن JavaScript أبطأ من الشفرة الأصلية ، فإن الاختلاف غير محسوس بالعين المجردة. لإثبات ذلك بشكل أكبر ، قرر المطورون إجراء اختبار يقارن بين نسختين من تطبيق أساسي تم تطويره في React Native و Swift ، وكلاهما أنتج نتائج أداء متطابقة. حتى عندما يتعلق الأمر بتطوير تطبيقات متعددة اللغات ، لم تكن النتائج مختلفة.
- تطبيق قوي حتى في السنوات القادمة
نظرًا للاعتماد السريع لإطار العمل ونهجه المباشر في حل مشكلات التطوير المتعلقة بالتطبيقات متعددة اللغات ، فإن مستقبل React Native للتطبيقات عبر الأنظمة الأساسية مشرق. حتى مع وجود بعض العيوب ، والتي سنبحثها في الجزء التالي ، فإن سرعتها وسهولة تطويرها تعوض عنها.
قراءة المزيد: أفضل 5 أطر تصميم لواجهة مستخدم React لعام 2021
عيوب إنشاء تطبيقات متعددة اللغات باستخدام React Native
هناك عيبان رئيسيان لإنشاء تطبيقات متعددة اللغات باستخدام React Native. هذه كالتالي:
- الوحدات المخصصة مفقودة
بينما كان React Native موجودًا منذ فترة ، فإن بعض الوحدات المخصصة إما تحتاج إلى تحسين أو غائبة تمامًا. هذا يعني أنه بدلاً من قاعدة بيانات واحدة فقط ، قد تحتاج إلى تشغيل ثلاثة قواعد أكواد (لـ React Native و iOS و Android).
بعد قولي هذا ، إنه ليس شيئًا متكررًا. ما لم تكن تنشئ تطبيقًا جديدًا من الصفر أو تحاول اختراق تطبيق حالي ، فمن غير المحتمل أن تواجه هذه الصعوبات.
- مشاكل التوافق والتصحيح
في حين أن هذا قد يكون مفاجأة - بعد كل شيء ، يستخدم لاعبو التكنولوجيا البارزون React Native - إلا أنه لا يزال في مرحلة تجريبية. قد يواجه المطورون مجموعة متنوعة من المشكلات المتعلقة بتوافق الحزمة أو أدوات التصحيح. إذا لم يكن المطورون ماهرين في React Native ، فقد يكون لهذا تأثير طفيف على التطوير لأنهم سيضيعون الوقت في استكشاف الأخطاء وإصلاحها.
قراءة المزيد: لماذا يعتبر React JS أفضل من Angular أو Vue JS؟
أمثلة على التطبيقات متعددة اللغات المصممة باستخدام React Native

الآن وقد ناقشنا الفوائد والعيوب ، دعونا نلقي نظرة على بعض التطبيقات الشهيرة متعددة اللغات التي تم إنشاؤها باستخدام React Native.
اوبر ايتس
كان UberEats أحد تطبيقات الأجهزة المحمولة التي تم إنشاؤها باستخدام React Native. وهو يختلف عن تطبيق Uber من حيث أنه يتألف من ثلاثة أطراف بدلاً من اثنين فقط - المطاعم وشركاء التوصيل وداينرز.
استلزم هذا إنشاء لوحة تحكم فريدة من شأنها أن تمثل أيضًا المطاعم. لوحة القيادة الأولية ، التي تم تصميمها بشكل أساسي للويب ، حدت من القدرة على نقل المعلومات الهامة إلى المطاعم. كما أنها تفتقر إلى الوصول إلى ميزات الجهاز الأصلية مثل الإشعارات الصوتية ، مما أضر بتجربة المستخدم.
كان لدى الفريق بالفعل الكثير من الخبرة في تطوير React ، ولكن ليس لديه معرفة كافية بنظامي Android و iOS ، لذلك كان اختيار React Native أمرًا لا يحتاج إلى تفكير. توظف UberEats مجموعة كبيرة من التقنيات ، لا يعد React Native منها سوى عنصر ثانوي. ومع ذلك ، فإن المطورين راضون عما يمكن أن يقدمه وهم على يقين من أنه سيكون قادرًا على تلبية مطالبهم مع توسع السوق.
وول مارت
يُعرف السوبر ماركت الأمريكي بالقيام بخطوات تقنية جريئة ، كان أحدها إعادة بناء تطبيقات الأجهزة المحمولة بالكامل في React Native .
في السابق ، تضمنت بعض أجزاء تطبيق Walmart عروض ويب متكاملة ، والتي ، وفقًا لـ Walmart Labs ، لم ترق إلى المستوى الذي يطلبه كل من الموظفين والمستهلكين.
بعد التبديل إلى React Native ، زاد أداء كل من تطبيقات iOS و Android بشكل كبير - بالقرب من المستويات الأصلية. يتم مشاركة خمسة وتسعين بالمائة من قاعدة التعليمات البرمجية بين Android و iOS ، ويتم إدارة كلا التطبيقين وتطويرهما بواسطة فريق واحد.
فيسبوك
يعد Facebook أحد أشهر تطبيقات React Native منذ أن ولدت وهي القوة الدافعة وراء تطوير لغة البرمجة هذه.
يهدف Facebook إلى جلب جميع مزايا التطوير عبر الإنترنت إلى الهاتف المحمول ، مثل التكرارات السريعة ووجود فريق تطوير منتج واحد ، وهذه هي الطريقة التي ولدت بها React Native. تم استخدامه في الأصل من قبل الشركة لإنشاء تطبيق Ads Manager الخاص بها لنظامي التشغيل iOS و Android.
انستغرام
اختار Instagram دمج React Native في تطبيقه الأصلي الحالي ، بدءًا من عرض إشعار الدفع ، والذي بدأ كعرض ويب. لحسن الحظ ، لم تكن هناك حاجة لتطوير البنية التحتية للملاحة لأن واجهة المستخدم كانت بسيطة بما يكفي لتعمل بدونها. باستخدام React Native ، تمكنت فرق المنتج من زيادة سرعة المطور بنسبة 85-99٪.
سكايب
سكايب مثال آخر على تطبيق الهاتف المحمول React Native. في عام 2017 ، صرحت Skype بأنها تقوم بتطوير تطبيق جديد تمامًا يعتمد على React Native. أثار هذا الكثير من الحماس بين مستخدميها ، حيث كان للإصدار السابق بعض العيوب.
من الرموز إلى تخطيط الرسالة الجديد ، والذي يتضمن الآن ثلاثة أقسام مناقشة: البحث والدردشة والتقاط ، تم إصلاح التطبيق الجديد بالكامل. اختارت Microsoft ، التي تمتلك Skype ، استخدام React Native ليس فقط في تطبيق الهاتف المحمول ولكن أيضًا في إصدار سطح المكتب للنظام الأساسي.
الحد الأدنى
يُعد React Native خيارًا ممتازًا إذا كان المشروع لا يتطلب واجهة معقدة أو الوصول إلى الوظائف الأصلية أو عندما يرغب المطورون في إنشاء تطبيقات متعددة اللغات لمنصة واحدة. علاوة على ذلك ، يعد React Native بديلاً شائعًا ومناسبًا إذا كانت ميزانيته مقيدة. الكل في الكل ، إنه تطبيق بسيط وسهل ومناسب للميزانية متاح تحت تصرف الجميع!
بمساعدة خبرائنا في React Native ، من ذوي الخبرة في تطوير التطبيقات متعددة اللغات ، نحن في Creole Studios نسعى جاهدين لتقديم أفضل الخدمات والتسهيلات لعملائنا. من تطوير التطبيقات إلى تطوير الأنظمة للويب ، نقوم بكل شيء. لذا ، إذا كنت مهتمًا بالاستفادة من خدماتنا وإنشاء تطبيق متعدد اللغات باستخدام React Native ، فاتصل بنا اليوم!