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