حين تقرر مقاولة صغيرة أو شركة ناشئة مغربية إطلاق تطبيق على الهاتف، فإن أول سؤال يُطرح لا يكون تقنيا في الغالب، بل يتعلق بالميزانية والوقت: كم سيكلف هذا المشروع، وبعد كم من الوقت سيصل التطبيق إلى أيدي الزبائن؟ في شركة SmartJar بمدينة تازة، اخترنا Flutter كخيار أساسي لأغلب هذه المشاريع. وفيما يلي الأسباب العملية لذلك.
قاعدة برمجية واحدة لنظامي iOS وأندرويد
في السابق، كان استهداف الآيفون والأندرويد معا يفرض بناء وصيانة تطبيقين منفصلين، بفريقين أو بكفاءتين مختلفتين. وبالنسبة لميزانية مغربية محدودة في الغالب، كان ذلك يعني مضاعفة الكلفة بشكل يصعب تبريره.
يتيح إطار العمل مفتوح المصدر Flutter، الذي طورته Google، كتابة قاعدة برمجية واحدة تُنتج منها التطبيقان معا. ويعني هذا عمليا:
- تقليصا واضحا لمدة الوصول إلى السوق، وهو أمر حاسم حين يجب اختبار فكرة قبل المنافسين؛
- خفضا لكلفة التطوير، وخصوصا الصيانة، لأن أي تصحيح أو ميزة جديدة يُنجز مرة واحدة فقط؛
- انسجاما تاما بين المنصتين، دون فروقات مزعجة في السلوك بالنسبة للمستخدم.
أداء وواجهة قريبان من التطبيقات الأصلية
المخاوف المعتادة من أطر العمل متعددة المنصات هي البطء أو الشعور بأن التطبيق مجرد صفحة ويب متنكرة. ويجيب Flutter عن ذلك بطريقة خاصة: فهو لا يعتمد على مكونات النظام، بل يرسم بنفسه كل نقطة في الواجهة عبر محرك عرض خاص به، مُترجَم إلى شيفرة أصلية.
والنتيجة واجهة سلسة برسوم متحركة تصل إلى ستين إطارا في الثانية وإحساس متقن. وبالنسبة للغالبية العظمى من التطبيقات التجارية، من البيع الإلكتروني إلى حجز المواعيد والتدبير والخدمات، يكفي هذا المستوى من الأداء تماما ويصعب تمييزه عن تطبيق أصلي بالكامل.
دعم متين للثنائية اللغوية والكتابة من اليمين إلى اليسار
هذه نقطة نعتبرها جوهرية في السياق المغربي. فالتطبيق الجاد يجب أن يعيش بالفرنسية والعربية معا، والعربية تُكتب من اليمين إلى اليسار. وكثير من التطبيقات تتعامل مع العربية كترجمة متسرعة، بقوائم غير محاذاة وأيقونات تشير في الاتجاه الخطأ.
يدعم Flutter التعريب وتحويل الواجهة بالكامل إلى وضع اليمين-إلى-اليسار بشكل أصيل. فحين ينتقل المستخدم إلى العربية:
- تُعاد تنظيم الواجهة بأكملها، بما في ذلك الهوامش والمحاذاة واتجاه أسهم التنقل؛
- يبقى مزج النص العربي بالأرقام أو المصطلحات اللاتينية مرتبا بشكل صحيح؛
- يمكن للتطبيق نفسه أن يقدم تجربة متكافئة فعلا بالعربية والفرنسية دون تنازلات.
ملاءمة جيدة للحاجيات المحلية
التطبيق المغربي الناجح يجب أن يندمج في المنظومة المحلية. ويغطي Flutter، بمكتباته الغنية، هذه الحاجيات الملموسة تغطية جيدة:
- الأداء الإلكتروني: دمج بوابات الدفع، بما فيها الحلول المرتبطة بالمركز النقدي (CMI) والبطاقات البنكية المحلية، عبر الأدوات التي يوفرها مزودو الخدمة؛
- الخرائط وتحديد الموقع: عرض الخرائط وتحديد مواقع الوكالات أو الموزعين وحساب المسارات؛
- العمل دون اتصال: في بلد يبقى فيه الاتصال متفاوتا خارج المدن الكبرى، فإن مقاربة "العمل دون اتصال أولا" التي تخزن البيانات محليا وتُزامنها فور عودة الشبكة تُحدث فرقا كبيرا للمستخدم.
خزان من الكفاءات في طور النضج
لا معنى لتبني تقنية ما إلا إذا أمكن توظيف الكفاءات وتطوير الفرق حولها. في المغرب، اتسعت جماعة مطوري Flutter بشكل واضح في السنوات الأخيرة: تكوينات ولقاءات للمطورين ومستقلون أكفاء وملفات مبتدئة متحمسة صارت كلها في المتناول. وهذا يقلل بالنسبة للمقاولة من خطر الاعتماد على كفاءة نادرة، ويسهّل استئناف المشروع على المدى الطويل.
متى لا يكون Flutter الخيار المناسب
نفضل أن نكون صادقين: Flutter ليس جوابا شاملا لكل الحالات. وننصح بالنظر في خيارات أخرى، وخصوصا التطوير الأصلي، في بعض الحالات:
- التطبيقات التي تستغل بكثافة عتادا خاصا جدا بمنصة معينة، أو أحدث مستجدات نظام تشغيل لم تصدر إلا للتو؛
- ألعاب الفيديو الثقيلة ثلاثية الأبعاد، التي تخدمها محركات مخصصة بشكل أفضل؛
- المشاريع التي تعتمد بقوة على مكتبات أصلية لا يوجد لها مقابل مستقر في Flutter.
أما بالنسبة للغالبية الساحقة من تطبيقات التدبير والخدمة والتجارة الخاصة بالمقاولات المغربية الصغيرة والمتوسطة، فلا ينطبق عليها أي من هذه القيود.
خلاصة
ليس Flutter مجرد موضة عابرة، بل أداة عملية تلائم بشكل خاص قيود الميزانية والوقت والثنائية اللغوية لدى المقاولات المغربية. في SmartJar، نصمم ونسلّم تطبيقات Flutter لزبائن في مختلف أنحاء المغرب. وإذا كنت تفكر في مشروعك على الهاتف، فسيسعدنا أن نتحدث معك في الأمر.
