العناصر التي حقّقت نجاحًا في التطبيقات المصغّرة
في هذا الفصل، أريد الاطّلاع على الدروس التي تعلمتها من خلال البحث عن التطبيقات المصغّرة من وجهة نظر مطوّر الويب، أو الإجابة عن السؤال حول معنى تطوير التطبيقات المصغّرة.
المكونات
بدلاً من إعادة اختراع العجلة وجعل المطوّرين ينشئون تطبيقًا آخر يستند إلى نماذج واجهة مستخدِم شائعة، مثل علامات التبويب واللوحات المتعدّدة الأقسام واللوحات الدوّارة وما إلى ذلك، يتم شحن التطبيقات المصغّرة مع مجموعة تلقائية من المكوّنات القابلة للتوسيع في حال كنت بحاجة إلى المزيد. على الويب، تتوفّر أيضًا العديد من الخيارات، وقد أدرجتُ بعضًا منها في الفصل المخصص لمكوّنات التطبيقات المصغّرة. في عالم مثالي، تم إنشاء مكتبات المكوّنات على الويب بطريقة تتيح لك مزجها بحرية. في الممارسة العملية، غالبًا ما يكون هناك قيود معيّنة بشأن نظام التصميم الذي يجب أن تلتزم به عند استخدام مكوّن، أو يتم توزيع مكتبة المكوّنات بطريقة تجعلها متاحة بالكامل أو لا تكون متاحة على الإطلاق، ولكن لا يمكن إضافة مكوّنات فردية بسهولة إلى مشروع. ومع ذلك، هناك مكونات أساسية يمكنك استخدامها بشكل منفصل، أو مكتبات مثل generic-components التي تمّت إزالة أسلوبها عن قصد. يبدو أنّ العثور على هذه المراجع واستخدامها فكرة جيدة.
نموذج-عرض-نموذج عرض
إنّ النمط المعماري النموذج–العرض–نموذج العرض (MVVM) الذي يسهّل فصل تطوير واجهة المستخدم الرسومية (العرض) من تطوير منطق الواجهة الخلفية (النموذج) باستخدام لغة ترميز، يعني أنّ العرض لا يعتمد على أيّ منصة نموذج معيّنة. على الرغم من أنّ هناك بعض العيوب الموثَّقة لهذا النمط، إلا أنّه يعمل بشكل جيد بشكل عام مع التطبيقات المعقدة مثل التطبيقات المصغّرة. ويمكن أن يكون هذا المكوّن مفيدًا بشكل خاص مع مكتبات النماذج الغنية (راجِع الفصل التالي).
التفكير على مستوى الصفحة
يُظهر تصحيح أخطاء التطبيقات المصغّرة أنّها في الأساس تطبيقات متعددة الصفحات. ويعود ذلك بالعديد من المزايا، مثل السماح بالتوجيه البسيط وتنسيق كل صفحة بدون تعارض. لقد طبّق المستخدمون تصاميم MPA بنجاح على تطبيقات الويب التقدّمية. يساعد التفكير في الصفحات أيضًا في إدارة الموارد، مثل ملفات CSS وJavaScript لكل صفحة، ومواد العرض الأخرى، مثل الصور والفيديوهات. والأهم من ذلك، أنّ إنشاء التطبيق بهذه الطريقة يعني أنّك تحصل على ميزة تقسيم الرموز البرمجية المستندة إلى المسار مجانًا إذا لم تحمِّل أي محتوى آخر. في هذه الحالة، لا تحمّل كل صفحة إلا ما تحتاجه لتعمل.
عملية التصميم
لا تتضمّن التطبيقات المصغّرة عملية إنشاء مرئية. على الويب، تستفيد أدوات الإنشاء الحديثة، مثل Snowpack، من نظام الوحدات المضمّن في JavaScript (المعروف باسم ESM) لتجنُّب العمل غير الضروري والحفاظ على السرعة بغض النظر عن حجم المشروع. على الرغم من أنّه لا يزال الوقت مبكرًا لاستخدام تقنيات مثل حِزم الويب، إلا أنّها ميزة يمكن إضافتها بسهولة إلى عملية الإنشاء.
إمكانات فعّالة
اكتسبت منصة الويب العديد من الإمكانات الجديدة مؤخرًا. أصبح بإمكانك الآن الوصول إلى الأجهزة عبر البلوتوث وUSB وHID والتسلسلي وNFC. عندما يتم تشغيل التطبيقات المصغّرة في مكوّنات WebView وتعتمد على جسر JavaScript، تتوفّر هذه الإمكانات القوية مباشرةً على الويب، وبذلك لا تبرمج باستخدام واجهة برمجة تطبيقات يوفّرها جسر JavaScript، بل باستخدام واجهة برمجة تطبيقات المتصفّح بدون عنصر وسيط.
الشكر والتقدير
تمت مراجعة هذه المقالة من قِبل جو ميدلي، كايسي باسكيز، ميليكا ميهاجيليا، آلان كينت، و"كيت غو".