كيف يمكن لـ Flutter Web تقليل تكلفة تطوير تطبيقك
نشرت: 2020-05-15لقد توصلت إلى فكرة منتج ولكنك بحاجة إلى خطة لإخراجها إلى العالم. من أجل عرض خدمتك على أكبر عدد ممكن من المستخدمين ، تحتاج إلى تطبيقات للهاتف المحمول والويب. لكن بحثك القصير قاسٍ - على الرغم من أن لديك فكرة واحدة ضيقة ، إلا أنها تتطلب ثلاثة تطبيقات مختلفة (Android ، iOS ، الويب) ، وثلاثة أنواع مختلفة من المتخصصين (Kotlin ، و Swift ، و JavaScript) ، وربما حتى ثلاثة بائعين منفصلين.
لكنك لست أول من يكون في هذا المنصب. وقف مبتكرو تطبيقات مثل Airbnb و Uber Eats و Discord في المكان الذي أنت فيه الآن. قرروا جميعًا استخدام حل متعدد المنصات. ويبدو أنه في عام 2020 ، كان أهم لاعب في هذا المجال هو Flutter.
ما هو Flutter؟
Flutter هو إطار عمل Google يسمح لك بإنتاج تطبيقات الهاتف المحمول لكل من iOS و Android باستخدام قاعدة بيانات واحدة. تم إصدار أول نسخة مستقرة من Flutter في نهاية عام 2018. قامت Google بإنشاء Flutter كاستجابة لميزانيات انصهار لتطبيقات الأجهزة المحمولة والشعبية المتزايدة لـ React Native ، لتصبح المنافس الرئيسي لها.
يلفت Flutter الانتباه إلى Dart ، وهي لغة موجهة من Google والتي ، وفقًا للعديد من المتخصصين في المجال ، هي مستقبل تطوير جميع الأجهزة المحمولة والويب وسطح المكتب. مقارنةً بجافا سكريبت التي يستخدمها React Native ، فإن Dart موجه بالكامل للكائنات ومكتوب بقوة. ماذا يعني هذا لعملك؟ الكود الذي يتم تسليمه في Dart أكثر مقاومة للأخطاء ويسهل الحفاظ عليه ، حتى لسنوات عديدة في فريق متغير.
يقهر Flutter للويب المتصفحات
كيف يترجم كل هذا إلى الويب؟ 2020 هو عام مهم بالنسبة لـ Flutter لأنه يجلب معه تحديًا جديدًا. إطار العمل على وشك التغلب على الشاشات ومتصفحات الويب الأكبر حجمًا. على مدار العامين الماضيين ، بصرف النظر عن Flutter ، كان هناك مشروع بحث يسمى Hummingbird والذي كان من المفترض أن ينشئ تطبيقات ويب من نفس كود Flutter الذي تستخدمه تطبيقات iOS و Android.
نضج المشروع ، وقبل عام قام الفريق الأساسي بإدراجه في الإطار ، وحاليًا (اعتبارًا من مايو 2020) لا يزال في الفرع التجريبي. ماذا يعني هذا؟ حتى اليوم ، من الممكن إنشاء تطبيقات ويب باستخدام Flutter ويمكن لفريق Google إعلان أنها مستقرة في أي لحظة. رمز واحد ، تكنولوجيا واحدة ، ثلاثة طيور بحجر واحد . يبدو أن مشروعك مناسب تمامًا.
سيناريو التطبيقات عبر الأنظمة الأساسية شائع جدًا. استخدمت الكثير من الحلول المشهورة والمعروفة هذا النموذج لتوفير الوقت والمال. قررت شركات Walmart و Soundcloud و Bloomberg استخدام تطبيقات الهاتف المحمول عبر الأنظمة الأساسية. أراهن أن لديك تطبيقًا واحدًا على الأقل متعدد الأنظمة الأساسية على هاتفك المحمول.
هل تشعر بالفضول حيال التطوير عبر الأنظمة الأساسية؟
يتعلم أكثر ومع ذلك ، فإن إمكانية إنشاء تطبيقات الويب على طول الطريق أمر انفتح لنا قبل بضعة أشهر فقط. على الرغم من عدم اتخاذ أي من العلامات التجارية الكبرى قرارًا بشأن هذه الخطوة حتى الآن ، فمن الواضح اليوم أنها ستكون أداة ممتازة قريبًا أو لاحقًا للشركات الناشئة ونقاط الوصول السريعة.
فوائد Flutter لتطبيقك
انخفاض تكاليف التطوير
باستخدام Flutter للويب ، يتم إنشاء ثلاثة تطبيقات باستخدام قاعدة بيانات واحدة ، ضمن فريق واحد متصل تقنيًا ، بوتيرة واحدة . لا يتعين عليك البحث عن بائعين لثلاث تقنيات مختلفة ثم مزامنة عملهم. ليست هناك حاجة لتكرار نفس وظيفة الدفع أو إذن وسائل التواصل الاجتماعي ثلاث مرات.
ومع ذلك ، هذا لا يعني أنك ستكون قادرًا على تحديد عدد النفقات بمقدار ثلاث مرات. غالبًا ما يكون تقديم وظيفة معينة للمنصات المشتركة أكثر تعقيدًا بعض الشيء. من واقع خبرتي ، هناك شيء مثل عامل المضاعف عبر الأنظمة الأساسية الذي يساوي 1.2-1.5. هذا يعني أنه إذا كانت الوظيفة تستغرق X ساعة من التطوير لمنصة واحدة ، فإنها تستغرق (1.2-1.5) * X عندما يتعلق الأمر بالمنصة المشتركة. ومع ذلك ، يمكن أن تكون x1.5 مقارنة بـ x3 حالة رابحة لميزانيتك.
تطوير أسرع للتطبيق
كل ما سبق يجعل الرفرفة اختيارًا ممتازًا للتحقق من فكرة المنتج وتحديد الهوية (PoC). في غضون أسابيع قليلة ، يمكنك إنشاء تطبيق عملي يمكنك إصداره بسهولة في متاجر التطبيقات. بعد النجاح المحتمل ، يمكنك التفكير في إعادة إنشاء التطبيقات للتقنيات الأصلية. تبعت Airbnb هذا المسار. بعد نجاح تطبيقات الأجهزة المحمولة عبر الأنظمة الأساسية ، قرروا التبديل إلى التطبيقات الأصلية في عام 2018.
عملية صيانة أبسط
أيضًا ، ضع في اعتبارك ما سيحدث عندما ينجح طلبك أخيرًا. عندما تدخل في الصيانة ، يكون من الأسهل بكثير صيانة التطبيق مع أخصائي Dart / Flutter . قد لا يتمكن عملك من العثور على مهام لثلاثة مطورين مختلفين بدوام كامل فقط من خلال الحفاظ على الكود. وبالمثل ، فإن أي اختلال في مهاراتهم سيؤدي إلى اختلافات في وتيرة العمل.
مهارات فريق التطوير مهمة أيضًا بالنظر إلى الشكل والمظهر المشتركين على منصات مختلفة. من خلال العمل في ثلاثة مشاريع ، يعتمد شكلها النهائي بشدة على مهارات المطور وسلوك واجهة المستخدم. عندما يفضل الشخص الذي يعمل بنظام iOS الزوايا الدائرية ولا يكون نظام التشغيل Android حريصًا عليها ، يمكن أن يتضح أن هذين التطبيقين سيختلفان في كيفية تأثيرهما على العلامة التجارية للمنتج.
Flutter لمخاطر الويب
تطوير قضايا التكنولوجيا
حسنًا ، ولكن هل هناك أي مخاطر أو عيوب مرتبطة باختيار Flutter للويب؟ كما هو الحال دائمًا ، هناك جانبان للقصة. من الناحية الفنية ، يجب أن نتذكر أنها لا تزال تقنية تجريبية. لذلك فهي ليست مستقرة تمامًا وقد تواجه مشكلة غير قابلة للحل . أحيانًا يكون دعم مكتبات Flutter الموجودة معًا غير مكتمل. من الشائع أن تعمل المكتبة مثل السحر على الهاتف المحمول ولكنها تتعطل على تطبيقات الشبكة لأنها غير محسّنة لذلك. هذه مشكلة ثانوية عندما تقتصر على واجهة المستخدم ، ولكنها قد تكون مزعجة إذا كان هذا هو تكامل خدمة الدفع الرئيسية.

استثناءات تطبيقات الويب
هناك مشكلة أخرى وهي أنه حتى إذا كانت أكوان تطبيقات Android و iOS متشابهة جدًا وكانت قاعدة التعليمات البرمجية في معظم الحالات متماثلة بنسبة 95-100٪ ، فقد لا ينطبق هذا على إصدار المتصفح. يعد درج الورقة السفلية أو قائمة علامة التبويب السفلية أو الدوارات الأفقية أنماطًا رائعة لتجربة المستخدم المحمولة لا تنطبق على الويب جيدًا. غالبًا ما تحتاج إلى إنشاء استثناءات لتطبيق الويب فقط . غالبًا ما يحتاج التصميم المعماري إلى أن يكون مختلفًا تمامًا في الجوّال والويب. في بداية العمل ، من الجيد تنظيم مناقشة مائدة مستديرة بين المصممين والمطورين. اسمح لهم بمشاركة وجهة نظرهم وحاول الوصول إلى توافق في الآراء ، خاصة إذا كنت تهتم بميزانيتك وتواريخك.
Flutter مقابل React Native
ولكن هل Flutter for Web خيارك الوحيد؟ بالطبع لا. أهم بديل له هو React Native. React Native هو إطار عمل تنافسي اخترعه Facebook ودعمه بسنوات قبل Flutter. يتيح لك القيام بنفس الشيء تمامًا - إنشاء جميع تطبيقات iOS و Android والويب (على غرار Flutter لفترة قصيرة نسبيًا).

اكتشف ما يخبئه المستقبل لتطبيقات الأجهزة المحمولة
احصل على التقرير مجانا!لقد أمضيت العامين الماضيين في العمل مع React Native ، قفزت مؤخرًا إلى عالم Flutter حتى أتمكن من تقديم بعض النصائح لك إذا واجهت قرارًا بين هذين الأمرين. بادئ ذي بدء ، لا يوجد فائز واحد في هذه المبارزة ، فكلتا التقنيتين ناضجة وكلاهما ممتاز مثل المنصات المشتركة. ولكن هناك بعض الفروق الدقيقة التي يمكن أن تحقق ميزة عند تنفيذ مشروع معين:
- إذا كنت تهتم بشكل خاص بواجهة المستخدم المتعلقة بالإيماءات (التمرير ، والسحب ، وسحب الأدراج ، وما إلى ذلك) ، فسيكون Flutter خيارًا أفضل بسبب بنيته ودعم الإيماءات على الجانب الأصلي. تكافح RN أحيانًا لتقديم أداء جيد لمجموعة من الإيماءات + الرسوم المتحركة.
- إذا كان الويب هو نقطة الاتصال الرئيسية لنشاطك التجاري ، فحدد React Native. تنتج RN تطبيق متصفح أقرب بكثير إلى المنتجات المطورة الأصلية ويمكنك تصحيحه باستخدام الأدوات الأصلية. من ناحية أخرى ، لا تنتقل Flutter لمشاريع الويب إلى DOM النموذجي وتحتاج إلى مهايئات.
- إذا كان سيتم الحفاظ على طلبك وتطويره على مر السنين (أو قد يتغير الفريق الذي يعمل عليه بمرور الوقت) ، فقد يكون Flutter and Dart حلاً أفضل.
- إذا كان تطبيقك يفترض استخدام آليات أكثر تعقيدًا قليلاً (البلوتوث ، والقياسات الحيوية ، وتحديد الموقع الجغرافي) أو عمليات تكامل خارجية (المدفوعات ، ووسائل التواصل الاجتماعي) ، فإن React Native كانت موجودة لفترة أطول ولديها مجموعة واسعة من المكتبات حولها. يتزايد نظام Flutter for Web الإيكولوجي كل شهر ، ولكن مع ذلك ، يجب أن يسبق البحث عن المكتبات المتاحة كل مشروع هناك.
هل تريد اكتساب المزيد من الأفكار حول هذين الإطارين الشائعين على نطاق واسع؟ تحقق من المقارنة بين React Native و Flutter!
تلخيص لما سبق
لم يسبق أن كان المستخدمون منتشرين بين المنصات. الأجهزة المحمولة ومتصفحات الويب هي مجرد نصائح من جبل الجليد. يتزايد استخدام المستخدمين للتطبيقات في السيارات والساعات وأجهزة التلفزيون بينما أصبحت المساعدين الصوتيين أكثر شيوعًا أيضًا. لذلك ، هناك حاجة إلى تبسيط العملية وتقليل تكاليف إنتاج البرمجيات. يعد أحد قواعد البرمجة لكل من تطوير الويب والهاتف المحمول نمطًا شائعًا بالفعل ، ويعد Flutter للويب مثالًا رائعًا.
أنشئ تطبيقك التالي باستخدام Flutter
لنعمل معالفترة طويلة ، كنت أعتبر Flutter للويب تقنية وليدة. لقد جعلني عملي الأخير أغير رأيي والآن أقف على تصحيح. Flutter هو شاب بالغ يقف أمام مستقبل مشرق وهو بالتأكيد يستحق التفكير. يبدو أنه خيار جذاب للأفكار ذات الميزانيات الصغيرة والمواعيد النهائية القصيرة. إنه لمن يريدون التحقق من أفكارهم بسرعة وبنفقات منخفضة ، أولئك الذين لديهم فكرة ويستجيبون لاحتياجات السوق. هذا هو بالضبط نفس الشيء الذي فعله Flutter مع تطوير البرمجيات.
يبدو واعدا؟
هل تتساءل عما إذا كان التطوير عبر الأنظمة الأساسية سيكون حلاً جيدًا لعملك؟ اتصل بفريقنا واحصل على تقدير لمشروعك.