Flutter أم تطبيقات أصلية للسوق الإلكتروني؟

الإجابة المختصرة

اختر Flutter لمعظم الأسواق الإلكترونية تقريبًا. فكود واحد يبني تطبيقي iOS وAndroid لكل طرف، فيُكتب كل تغيير مرة واحدة ويبقى التطبيقان متوافقين. ولا تختر التطبيقات الأصلية إلا حين تعتمد ميزة أساسية على الجهاز نفسه، مثل الاستخدام المكثف للكاميرا أو المستشعرات أو الأجهزة المتصلة، أو على أداء لا يستطيع Flutter بلوغه في حالتك، أو حين يكون لديك بالفعل فريقان منفصلان لـiOS وAndroid.

هل ينبغي أن يستخدم سوقي Flutter أم تطبيقات أصلية؟

Flutter، في معظم الحالات تقريبًا. يحتاج السوق الإلكتروني إلى تطبيقين على الأقل، أحدهما للعملاء والآخر لمقدّمي الخدمة، على iOS وAndroid معًا. ويبني Flutter كلًا منهما من كود واحد، فيُكتب التغيير مرة واحدة ويصل إلى المنصتين معًا.

والتطبيقات الأصلية هي الخيار الأفضل في حالات قليلة نصفها أدناه. وإذا لم يكن سوقك من بينها، فإن Flutter هو الخيار الافتراضي المعقول.

ما الفرق ببساطة؟

تعني التطبيقات الأصلية بناء تطبيق iOS وتطبيق Android كلًا على حدة، باللغة والأدوات التي توفرها الشركة صاحبة المنصة. كودان، ومجموعتان من المطورين عادةً، لكل تطبيق.

أما Flutter فإطار عمل متعدد المنصات (أي مجموعة أدوات لبناء تطبيق واحد يعمل على عدة منصات). تكتب التطبيق مرة واحدة، فيعمل على iOS وAndroid كتطبيق مُصرَّف، لا كصفحة ويب داخل تطبيق. وحين يحتاج إلى ما لا يستطيعه إلا الهاتف، يمكنه استدعاء كود أصلي لتلك الميزة وحدها.

لماذا يناسب Flutter معظم الأسواق الإلكترونية؟

لأن السوق الإلكتروني يضاعف تكلفة بناء كل شيء مرتين. وبشكل خاص:

  • هناك عدة تطبيقات، لا تطبيق واحد. العملاء، ومقدّمو الخدمة، والمندوبون أو السائقون في منصات التوصيل والخدمات اللوجستية. والتطبيقات الأصلية تضاعف كلًا منها.
  • يجب أن يبقى الطرفان متوافقين. حين تغيّر طريقة عمل الحجز، يجب أن يتغير تطبيق العميل وتطبيق مقدّم الخدمة معًا، على المنصتين، في اليوم نفسه. والكود الواحد يجعل ذلك هو الوضع الطبيعي.
  • معظم الشاشات معتادة. القوائم، والبحث، والملفات، والخرائط، والحجز، والمحادثة، والمدفوعات، وتتبع الطلبات. ولا يحتاج أي منها إلى ما تنفرد به التطبيقات الأصلية.
  • تحتاج النسخة الأولى إلى الإطلاق قريبًا. بناء كل تطبيق مرة واحدة يختصر الطريق إلى نسخة عاملة مع عملاء حقيقيين.
  • يمكن للويب مشاركة العمل. في Help24، سوقنا الصحي في ساحل العاج، يتشارك Flutter للجوال وFlutter للويب معظم منطق العمل.

وهناك أيضًا فائدة أقل ظهورًا. فكل تغيير يُختبر مرة واحدة. وفي السوق الإلكتروني، حيث يصل خطأ في شاشة الدفع إلى العملاء ومقدّمي الخدمة، فإن قلة الأماكن التي تختبئ فيها الأخطاء أمر ثمين.

متى تكون التطبيقات الأصلية هي الخيار الأفضل؟

حين يكون الجهاز نفسه هو المنتج، أو حين يكون لديك فرق أصلية بالفعل. والحالات الصادقة هي:

  • معالجة مكثفة للكاميرا أو الفيديو أو الصور تعمل على الهاتف، مثل المؤثرات المباشرة أو التحليل على الجهاز.
  • الأجهزة المتصلة. تطبيق يتصل باستمرار بقارئات البطاقات أو المستشعرات أو الأجهزة القابلة للارتداء أو غيرها عبر البلوتوث، حيث يكون التوقيت والموثوقية هما الميزة الأساسية.
  • الأداء عند أقصى ما تستطيعه الهواتف، مثل الرسومات ثلاثية الأبعاد الثقيلة أو الواقع المعزز.
  • ميزات المنصة الجديدة في أول يوم تظهر فيه، حين لا يكون انتظار دعم Flutter مقبولًا.
  • فريقان منفصلان لـiOS وAndroid موجودان بالفعل. فنقل مؤسسة تعمل بالتطبيقات الأصلية إلى Flutter قرار يخص الأشخاص، لا التقنية فقط.

وحتى حينها، نادرًا ما يكون الأمر كل شيء أو لا شيء. فكثير من التطبيقات المبنية بـFlutter تستخدم كودًا أصليًا للميزة أو الميزتين اللتين تحتاجان إليه. وإذا كان في سوقك ميزة واحدة تعتمد كثيرًا على الأجهزة، فهذه هي الإجابة عادةً.

ولا تطابق معظم الأسواق الإلكترونية أيًّا من هذه الحالات. فسوق الخدمات المنزلية أو التوصيل أو الصحة أو صنّاع المحتوى ينفق جهده على المطابقة والمال والثقة، لا على عتاد الهاتف.

كيف يقارن Flutter والتطبيقات الأصلية في السوق الإلكتروني؟

FlutteriOS وAndroid الأصليان
الوقت حتى النسخة الأولىأسرع: يُبنى كل تطبيق مرة واحدةأبطأ: يُبنى كل تطبيق مرتين
الأكواد التي تجب صيانتهاكود واحد لكل تطبيقكودان لكل تطبيق
التكلفة المقدمةأقل مقدمًاأعلى مقدمًا
تكلفة التغيير لاحقًايُكتب التغيير ويُختبر مرة واحدةيُكتب التغيير ويُختبر مرتين، ويجب إبقاؤهما متوافقين
الوصول إلى ميزات الجهازعبر الإضافات، مع كود أصلي عند الحاجةكامل ومباشر
صرف المستحقات ووسائل الدفع المحليةيحدّدها الخادم وبوابة الدفع، وهي واحدة في الحالتينيحدّدها الخادم وبوابة الدفع، وهي واحدة في الحالتين
ما تملكهالكود والمستودع والحسابات ومفاتيح التوقيع، عند السداد الكاملالشيء نفسه، مع ضعف الكود للتسليم
من يتولى الصيانةفريق واحد يعرف Flutterمطورون لكل منصة، أو فريق واحد يغطي الاثنتين
نسخة الويبيمكنها مشاركة المنطق مع التطبيقاتتُبنى بشكل منفصل

هل يغيّر Flutter أو التطبيقات الأصلية طريقة عمل المدفوعات وصرف المستحقات؟

لا. تعيش المدفوعات وصرف المستحقات والاسترداد والنزاعات في الغالب على الخادم ولدى بوابة الدفع، لا في التطبيق. نختار بوابة الدفع حسب الدولة وحسب الحاجة إلى صرف المستحقات، وهذا الاختيار واحد أيًّا كان إطار العمل الذي يرسم الشاشات.

والأمر الوحيد الذي يجب التحقق منه مبكرًا هو هل توفر البوابة المستخدمة في سوقك ما يحتاجه التطبيق على الهاتف. وهذا جزء من تحديد النطاق، لا سبب لاختيار التطبيقات الأصلية. يمكنك قراءة المزيد في مدفوعات السوق الإلكتروني وصرف المستحقات: من يحتفظ بالأموال؟.

ما الذي لا يحسمه هذا الخيار؟

معظم ما يجعل السوق الإلكتروني صعبًا. فإطار العمل يحدّد كيف تُبنى التطبيقات. لكنه لا يحدّد كيف يُسجَّل مقدّمو الخدمة، وكيف تُحدَّد الأسعار، وكيف تُحفظ الأموال، وماذا يحدث حين يسوء العمل.

نحن نُشغّل FindWorker، سوق الخدمات المنزلية الخاص بنا في باكستان. يحدّد العمّال أسعارهم ويختار العملاء من بينهم، وصرف المستحقات والاسترداد والنزاعات وعدم الحضور مشكلات نتعامل معها في منصتنا. وهذه هي الأمور التي تسوء في سوق حي، ولا يُصلح أيًّا منها اختيار التطبيقات الأصلية بدلًا من Flutter. ولهذا نقضي أسبوع تحديد النطاق على نموذج التشغيل، ولهذا يستغرق سؤال إطار العمل عادةً حديثًا واحدًا.

هل يشكّل اختيار Flutter خطرًا على المستقبل؟

خطر صغير، ويُدار بالطريقة نفسها التي يُدار بها أي خطر تقني: بامتلاك الكود وتوثيقه. Flutter واسع الاستخدام، ويمكن توظيف مطورين يعرفونه، سواء استبدلتنا أو بنيت فريقك.

الكود ملكك عند السداد الكامل. والمستودع والحسابات ومفاتيح التوقيع لك، مع وثائق تسليم ليتمكن فريق آخر من المتابعة. وإذا احتجت يومًا إلى ميزة أصلية، يستطيع Flutter استدعاء كود أصلي لها دون إعادة كتابة. وتجد المزيد عن طريقة بنائنا في تطوير تطبيقات الأسواق الإلكترونية.

ما سنسألك عنه أولًا

قبل أن نوصي بإطار عمل، سنسأل:

  1. سوق إلكتروني أم بائع واحد؟ يحدّد عدد التطبيقات التي تحتاجها، وبالتالي تكلفة الكود الثاني عليك.
  2. مندوبوك وموظفوك أم طرف ثالث؟ يعني مندوبوك أو سائقوك تطبيقًا آخر، مع تحديد الموقع في الخلفية.
  3. هل تعتمد ميزة أساسية على عتاد الهاتف؟ إذا كان الجواب نعم، ننظر في تلك الميزة وحدها قبل أن نقرر.
  4. ما الموجود حاليًا، وما حالته؟ التطبيق الأصلي القائم الذي له مستخدمون حقيقيون يغيّر الإجابة.
  5. ما نطاق الميزانية؟ كودان لكل تطبيق هما أغلى طريقة لبناء سوق إلكتروني.

للحصول على إجابة تخص منصتك، ينتج المخطِّط ملخص مشروع، ونرد عليك بعرض سعر مخصّص، عادةً خلال يوم عمل واحد. ولمعرفة كيف يعمل تحديد النطاق والمراحل، اقرأ طريقة عملنا.

أسئلة يطرحها الناس عند اتخاذ القرار

هل سيلاحظ العملاء أن تطبيقي مبني باستخدام Flutter؟

ليس في تطبيق سوق إلكتروني مبني جيدًا. يرسم Flutter شاشاته بنفسه ويعمل كتطبيق مُصرَّف على الهاتف، لا كصفحة ويب داخل تطبيق. وتعمل القوائم والبحث والخرائط والحجز والمحادثة وشاشات الدفع كما يتوقع العملاء. وحين يبدو التطبيق بطيئًا، يكون السبب عادةً الخادم أو الشبكة أو تصميم الشاشة، وهذه المشكلات تلازمك أيًّا كان إطار العمل الذي تختاره.

هل يستطيع هذا التطبيق استخدام الموقع والخرائط والكاميرا والإشعارات؟

نعم. تتوفر هذه عبر الإضافات، وحيث لا تكفي الإضافة، يستطيع Flutter استدعاء كود iOS أو Android الأصلي لتلك الميزة وحدها. وهذه هي الإجابة العملية لمعظم الأسئلة المتعلقة بالجهاز: ابنِ التطبيق بـFlutter واكتب جزءًا أصليًا صغيرًا حيث يتطلب الجهاز ذلك. ويحتاج تحديد الموقع في الخلفية للمندوبين والسائقين إلى اختبار على هواتف حقيقية في المنصتين، وهذا ينطبق على التطبيقات الأصلية أيضًا.

هل هذا الخيار أقل تكلفة من التطبيقات الأصلية؟

في السوق الإلكتروني، نعم عادةً، لأن هناك كودًا واحدًا لـiOS وAndroid بدلًا من اثنين. وهذا أهم في السوق الإلكتروني منه في معظم التطبيقات، لأن هناك غالبًا تطبيقين أو ثلاثة: العملاء ومقدّمو الخدمة وأحيانًا المندوبون. ويُبنى كل تغيير ويُختبر مرة واحدة. أما رسوم الأطراف الثالثة والخادم ولوحة التحكم فتكلّف المبلغ نفسه في الحالتين، فالتوفير في التطبيقات لا في المنصة كلها.

إذا اخترت هذا الإطار، هل يمكنني توظيف فريقي لاحقًا؟

نعم. Flutter واسع الاستخدام ويمكن توظيف مطورين يعرفونه. ويعلّم مؤسسنا، تيمور سيكندر، Flutter على يوتيوب. الكود ملكك عند السداد الكامل، مع المستودع والحسابات ومفاتيح التوقيع، ونكتب وثائق تسليم ليتمكن فريق آخر من متابعة المنصة.

هل أحتاج إلى تطبيق ويب منفصل أيضًا؟

عادةً للوحة التحكم، وأحيانًا للعملاء. يستطيع Flutter البناء للويب وللجوال. وفي Help24 يتشارك Flutter للجوال وFlutter للويب معظم منطق العمل. أما هل تستحق نسخة ويب للعملاء البناء في المرحلة الأولى، فيعتمد على طريقة وصول عملائك إليك، ونقرر ذلك عند تحديد النطاق.

ما زلت غير متأكد من كيفية انطباق هذا على مشروعك؟

سؤال واحد وإجابة واحدة، عبر البريد الإلكتروني. دون مكالمة ودون أي التزام.

خطّط لمشروعك في دقيقتين.

دون مكالمة. بضعة أسئلة موجّهة، ثم عرض سعر مخصّص لك، عادةً خلال يوم عمل واحد.

احصل على تقدير

أو أرسل إلينا فكرتك في ثلاث جمل عبر واتساب، أو راسلنا على support@codingwitht.com.

اقرأ هذا أولًا