ما هي قاعدة Firebase؟ كشف كل الأسرار
ستقدم هذه المقالة تحليلاً متعمقًا لـ Firebase، وإيجابياته وسلبياته الهامة، وهيكل التسعير، والميزات الأساسية.
إن تطوير تطبيقات قوية وعالية الجودة للأجهزة المحمولة هو اقتراح يتطلب الكثير من التفاني، ولكن الأهم من ذلك هو وجود منصة تطوير قوية وغنية بالميزات.
تُعد Firebase من إسطبلات Google إحدى هذه المنصات التي حازت على إعجاب المطورين في جميع أنحاء العالم.
توفر Firebase للمطورين العديد من الخيارات لإنشاء تطبيقات منصة ويب وأندرويد وiOS وظيفية للغاية ومتعددة الاستخدامات.
على الرغم من وجود العديد من المتنافسين في مجال تطوير التطبيقات، إلا أن Firebase تتحاور باستمرار مع أفضل المنصات المتاحة حالياً.
تابع القراءة لاكتشاف كيفية عمل Firebase واكتساب نظرة متعمقة على إمكانياته.
Contents
ما هي قاعدة Firebase وكيف تعمل؟
ما هي Google Firebase؟ هي منصة لتطوير تطبيقات الهاتف المحمول من Google مع ميزات قوية لتطوير التطبيقات ومعالجتها وتحسينها. Firebase هي منصة خلفية لبناء تطبيقات الويب والهاتف المحمول.(1)
قاعدة Firebase هي في الأساس مجموعة من الأدوات التي يمكن للمطورين الاعتماد عليها لإنشاء التطبيقات وتوسيعها بناءً على الطلب.
تهدف Firebase إلى حل ثلاث مشاكل رئيسية للمطورين:
- إنشاء تطبيق، بسرعة
- إصدار تطبيق ومراقبته بثقة
- إشراك المستخدمين,
يحصل المطورون الذين يعتمدون على هذه المنصة على إمكانية الوصول إلى الخدمات التي كان عليهم تطويرها بأنفسهم، مما يمكنهم من التركيز على تقديم تجارب تطبيقات قوية.
تتضمن بعض الميزات البارزة لمنصة Google Firebase قواعد البيانات، والمصادقة، والرسائل الفورية، والتحليلات، وتخزين الملفات، وغير ذلك الكثير.
ونظراً لأن الخدمات مستضافة على السحابة، يمكن للمطورين إجراء التوسع عند الطلب بسلاسة دون متاعب. تعد Firebase حالياً من بين أفضل منصات تطوير التطبيقات التي يعتمد عليها المطورون في جميع أنحاء العالم.
الفئة | التفاصيل |
---|---|
نظرة عامة على قاعدة Firebase | منصة لتطوير تطبيقات الهاتف المحمول من Google مع ميزات لتطوير التطبيقات وتحسينها. |
ميزات Firebase الرئيسية | يتضمن قواعد البيانات، والمصادقة، والرسائل الفورية، والتحليلات، وتخزين الملفات، وما إلى ذلك. |
موقع القاعدة النارية | المقر الرئيسي في سان فرانسيسكو، كاليفورنيا. |
مؤسسو Firebase | أسسها أندرو لي وجيمس تامبلين في عام 2011. |
التطبيقات الشائعة التي تستخدم Firebase | Alibaba, The New York Times, Todoist, Le Figaro, و Ebay Motors. |
أنواع التطبيقات التي يمكن تطويرها | تطبيقات Android و iOS والويب. |
ما هي قاعدة Firebase المستخدمة في ماذا؟ | تشمل حالات استخدام Firebase الشائعة تطبيقات MVPs، وتطبيقات Realtime، وتطبيقات الدردشة/المراسلة، وتحسين الإعلانات، ومشاركة الصور، وتطبيقات الأعمال. |
بدائل Firebase | Back4app، و Backendless، و AWS Amplify، و Parse. |
تاريخ قاعدة Firebase
إن تاريخ Firebase مذهل للغاية، ومثل العديد من الشركات الناشئة، فقد شهدت الكثير من التقلبات. فقد نشأت الشركة من شركة Envolve، وهي شركة ناشئة تأسست في عام 2011 على يد أندرو لي وجيمس تامبلين.(2, 3, 4)
قدمت الشركة واجهة برمجة تطبيقات للمطورين لتسهيل تكامل الدردشة عبر الإنترنت للمواقع الإلكترونية. واكتشف مؤسسو Envolve أن خدمة الدردشة الخاصة بهم كانت تُستخدم في نقل رسائل غير الدردشة.
كان المطورون يعتمدون على المنصة لمزامنة بيانات التطبيقات في الوقت الحقيقي. قرر لي وتامبلين تمييز بنية الوقت الحقيقي عن نظام الدردشة، مما أدى إلى تأسيس Firebase في عام 2011. تم إطلاق منصة Firebase الخلفية كمنصة خدمة بشكل علني في أبريل 2012.
كان أول منتج تم إطلاقه من Firebase هو قاعدة البيانات الفورية. وهي عبارة عن واجهة برمجة تطبيقات لمزامنة بيانات التطبيقات عبر أجهزة Android والويب وiOS. يمكن لمطوري التطبيقات الاعتماد على المنصة لإنشاء تطبيقات تعاونية في الوقت الحقيقي.
وقد جمعت الشركة تمويلاً أولياً بأكثر من مليون دولار في عام 2012 من مساهمين، بما في ذلك Greylock Partners وNew Enterprise Associates وFlybridge Capital Partners وFounder Collective. كما جمعت الشركة أيضاً تمويلاً من الفئة A بقيمة 5.6 مليون دولار في يونيو 2013 من Flybridge Capital Partners و Union Square Ventures.(5)
أطلقت Firebase Authentication وFirebase Hosting في عام 2014 من قِبل Firebase، مما جعل الشركة رائدة في مجال تقديم الواجهة الخلفية للهاتف المحمول كخدمة (MbaaS).
أصبحت Firebase جزءًا من Google في أكتوبر 2014 وأصبحت الآن منصة Google BaaS. ثم استحوذ عملاق التكنولوجيا بعد ذلك على Divshot، وهي منصة استضافة ويب تم دمجها بعد ذلك مع Firebase.(6)
مراجعات قاعدة البيانات النارية
وفقًا لموقع G2، حصلت Firebase على 4.5 درجة من أصل 5، وقام 266 مستخدمًا بمراجعة المنصة. تتضمن الإشارات الشائعة وميزات المنتج تطوير التطبيقات، ووظائف السحابة، وتخزين البيانات.
يشير موقع TrustRadius إلى أن Firebase حصل على 8.5 درجة من 10، وقام 128 مستخدمًا بمراجعة المنصة. وكانت الآراء إيجابية لمعظم المستخدمين، ولم يراجع المنصة بشكل سلبي سوى أقلية ضئيلة.
وفقًا لموقع Capterra، حصلت Firebase على 4.6 من أصل 5، وقام 764 مستخدمًا بتقييم المنصة. مجموعة الميزات الشاملة هي الجانب الإيجابي الشائع الذي تم ذكره، وتعقيد الحل هو الجانب السلبي الشائع.
مزايا قاعدة Firebase
رقم المزايا | الميزة | الوصف |
---|---|---|
1 | مجاناً للبدء | تقدم Firebase خطة Spark Plan مجانية بحدود سخية، مما يتيح للمطورين البدء دون أي تكلفة. |
2 | سرعة التطوير | يتيح التطوير السريع ويقلل من الوقت اللازم للتسويق، حيث يتيح لمطوري الواجهة الأمامية التعامل مع معظم الأعمال دون الحاجة إلى فريق منفصل للواجهة الخلفية. |
3 | منصة تطوير التطبيقات المتكاملة | يوفّر مجموعة شاملة من الأدوات التي تغطي دورة تطوير التطبيق بالكامل، بدءاً من الإنشاء والاختبار وحتى النشر والمراقبة. |
4 | مدعوم من Google | مدعوم من Google، مما يوفر المتانة والتكامل مع خدمات Google Cloud. |
5 | التركيز على تطوير الواجهة الأمامية | يقلل من الحاجة إلى كود الواجهة الخلفية، مما يسمح للمطورين بالتركيز على إنشاء الواجهة الأمامية للتطبيقات. |
6 | إنه بلا خادم | يوفر بيئة بدون خادم، مما يقلل من المخاوف بشأن التوسع وإدارة الخادم. |
7 | قدرات التعلم الآلي | يوفر أدوات لتنفيذ ميزات التعلُّم الآلي في التطبيقات، وهي متاحة للمطورين من جميع مستويات المهارة. |
8 | توليد حركة المرور إلى التطبيقات | يدعم فهرسة التطبيق وتحسين ترتيب التطبيق على “بحث Google”، وبالتالي زيادة ظهور التطبيق واكتساب المستخدمين. |
9 | مراقبة الأخطاء | يتضمن نظام Crashlytics لتتبع الأخطاء وحلها في الوقت الفعلي، مما يعزز استقرار التطبيق وتجربة المستخدم. |
10 | الأمان والنسخ الاحتياطية | يضمن أمان البيانات وتوافرها من خلال ميزات مثل النسخ الاحتياطية المنتظمة والتعامل الآمن مع البيانات. |
هل تريد معرفة المزيد؟ انظر التفاصيل أدناه:
1. مجاني للبدء
Firebase مجاني للبدء ويتيح للمستخدمين تسجيل الدخول باستخدام حساب Google الخاص بهم.(7)
تقدم خطة Spark المجانية العديد من الميزات لمساعدة المطورين على البدء. وبناءً على المتطلبات المتزايدة، يمكنهم بعد ذلك اختيار خطة Blaze.
البدء بدون أي تكلفة هو خيار جيد تقدمه Firebase وأحد أسباب شعبيتها. تحتوي باقة Spark على حدود سخية لقاعدة البيانات للقراءة والكتابة.
الميزة الأخرى هي أن خطة Blaze Plan تراعي الحدود المجانية الأصلية.
على سبيل المثال، ستستضيف 20 جيجابايت من السعة التخزينية على باقة Blaze. ويغطي الحد المجاني 10 جيجابايت، مما يعني أن Firebase لن يفرض عليك سوى 10 جيجابايت مقابل الاستخدام الإضافي.
2. سرعة التطوير
Firebase هو خيار مناسب لتطوير التطبيقات يمكن أن يساعد المطورين على تقليل الوقت اللازم لتسويق تطوير التطبيقات بشكل كبير.
عادةً ما يحتاج كل مطور إلى الوصول إلى الخادم والمضيف لإنشاء وصيانة قاعدة البيانات والخدمة الخلفية.
وبالتالي، فإن وجود مطور للواجهة الخلفية ومطور للواجهة الأمامية ضروري لبناء التطبيقات. وهذا صحيح حتى بالنسبة للتطبيقات الصغيرة حيث يجب أن تتعاون الواجهة الخلفية والواجهة الأمامية في مراحل مختلفة.
قد يؤدي وجود مطوري الواجهة الأمامية والخلفية في كثير من الأحيان إلى حدوث أخطاء ومشكلات يمكن أن تسبب مشاكل في التطبيق، مما يزيد من تكاليف التطوير والتعقيد.
ومع ذلك، فإن استخدام Firebase يتيح لمطوري الواجهة الأمامية إدارة جميع الأعمال وتقليل الوقت اللازم لإنجازها. كل ذلك بفضل الخدمات الجاهزة للاستخدام لتخزين البيانات، والمصادقة، والإشعارات، والتحليلات، وغيرها.
علاوةً على ذلك، توفر Firebase العديد من الخدمات الجاهزة للاستخدام والتي ستمنع المطور من إنشاء كود برمجي وإعادة اختراع العجلة وبدء الواجهة الخلفية من الصفر.
وبفضل حزم تطوير البرمجيات عالية الجودة، والوثائق التفصيلية، ومجتمعها النابض بالحياة، لن يواجه مطورو الواجهة الأمامية الكثير من المشاكل في دمج Firebase في قاعدة شفراتهم.
3. الكل في منصة واحدة (عدد كبير من الخدمات)
كما تقدم Firebase للمطورين قائمة شاملة من المنتجات لمساعدتهم في عملية التطوير.
أولاً، هناك خياران لقاعدة البيانات هما Firestore وقاعدة البيانات الفورية من Firebase. وبالمثل، يتيح لك Firebase تخزين الوسائط السحابية دون عناء، ويتيح لك تطوير التطبيقات دون خادم من خلال الوظائف السحابية المدمجة.
تغطي Firebase دورة تطوير التطبيقات بالكامل، وتحتوي المنصة على ميزات لبناء التطبيقات وإصدارها ومراقبتها.
كما أنها الخطوة الأخيرة من دورة تطوير التطبيق، فهي توفر أدوات لإشراك المستخدمين والحفاظ على استخدامهم له.
4. مدعوم من Google
Firebase مدعوم من Google، أحد أبرز الأسماء الموثوق بها في عالم التكنولوجيا.
منذ الاستحواذ عليها، مرت Firebase بسلسلة من التغييرات والتطويرات وأصبحت المنصة الموثوقة التي هي عليها اليوم. فهي تستفيد من قوة سحابة Google Cloud والعديد من خدمات Google.
تُعد Firebase الآن جزءًا من منصة Google Cloud Platform، وتتوافق تمامًا مع خدمات Google Cloud الأخرى، وتتكامل مع الكثير من خدمات الجهات الخارجية.(8, 9)
منذ الاستحواذ على Firebase، استثمرت Google بكثافة في المنصة وقدمت منتجًا أكثر قوة.
5. التركيز على تطوير الواجهة الأمامية
يفضل المطورون في جميع أنحاء العالم Firebase لأنه يتيح لهم التركيز على إنشاء شيفرة أمامية لتطبيقات الجوال.
تقلل قاعدة Firebase من الحاجة إلى تطوير كود الواجهة الخلفية النمطية، مما يؤخر تاريخ اكتمال تطوير التطبيق.
يجعل Firebase تطوير التطبيقات مريحاً ويساعد على إبقاء التكاليف منخفضة.
كما يسمح استخدام Firebase للمطورين والشركات بتوحيد بيئة الواجهة الخلفية تحت تقنية واحدة سهلة التعلم.
يقلل نمط الواجهة الخلفية من التدريب المطلوب لدعمها ويتيح للمطورين الذين يركزون على الواجهة الأمامية أداء معظم الأنشطة.
6. إنه بلا خادم
توسيع نطاق الخوادم وتقليلها ليس بالمهمة السهلة! على وجه الخصوص، يعد توسيع نطاق مجموعة قواعد البيانات أمرًا صعبًا، كما أن تحسين الأداء لأحمال العمل الضخمة يتطلب مهندسين ذوي خبرة.
تحل Firebase هذه المشكلة وتوفر بيئة بدون خادم بالكامل.
يأتي Firebase بهيكلية بدون خادم تتطلب من المستخدمين الدفع بناءً على الطلبات، ولا يوجد ما يستدعي إدارة البنية التحتية للخادم أو القلق بشأنها. وهو يختلف عن الخادم التقليدي، الذي يجب أن يظل يعمل دائماً.
لا يتم تحصيل رسوم من مستخدمي Firebase إلا عند استخدام الخادم بسبب طبيعته التي لا تحتاج إلى خادم. ونتيجة لذلك، تقل المخاوف المتعلقة بالتوسع بسبب تحسين الكفاءة.
يحصل المطورون على الحرية من اتباع نهج عملي في التعامل مع DevOps والإعداد والبنية التحتية وتخطيط السعة.
7. التعلّم الآلي
إن التعلم الآلي على حافة إعادة تشكيل قطاع تكنولوجيا المعلومات. وقد بدأ بالفعل بطرق لا حصر لها.
ووفقًا لشركة Gartner، فإن 30% من الشركات ستستخدم تعلّم الآلة في جزء واحد من عملياتها.(10)
تعتبر Firebase مفيدة أيضاً لأنها تتيح للمطورين الاعتماد على التعلم الآلي.
يمكن استخدام تعلّم الآلة من قبل مطوري iOS و Android بغض النظر عن مستوى خبرتهم.
تحتوي Firebase على مجموعة أدوات تعلّم الآلة مع واجهات برمجة التطبيقات المتاحة بسهولة لمختلف ميزات المنصة المحمولة مثل التعرف على النصوص، واكتشاف الوجوه، ووضع العلامات على الصور، ومسح الباركود، وغيرها.
يمكن للمطوّرين اختيار واجهات برمجة التطبيقات السحابية أو على الجهاز بناءً على متطلبات تطوير التطبيقات.
8. توليد حركة المرور
تسهّل Firebase فهرسة التطبيقات للسماح للمستخدمين بإعادة إشراك مستخدمي “بحث Google” من خلال توفير روابط التطبيقات على “بحث Google”.(11)
يمكن أيضًا تحسين ترتيب التطبيق على محرك البحث مرة واحدة من خلال فهرسة التطبيق، مما يساعد تطبيقك على الظهور للمستخدمين الجدد الذين يمكنهم تثبيته.
يمكن للمطورين الاعتماد على تطبيق Android Instant App، والذي يمكن استخدامه للوصول إلى محتوى التطبيق.
9. رصد الأخطاء
تعد ميزة Crashlytics في Firebase أداة رائعة للعثور على المشكلات وإصلاحها بسرعة. يمكن لـ Firebase مراقبة الأخطاء غير المميتة والقاتلة، ويتم إنشاء التقارير بناءً على كيفية تأثير الأخطاء على تجربة المستخدم.(12)
10. النسخ الاحتياطية
تضمن Firebase الأمان والتوافر الأمثل للبيانات بمساعدة النسخ الاحتياطية المنتظمة.(13)
التطبيقات محمية من فقدان البيانات من خلال الاعتماد على ميزة النسخ الاحتياطي التلقائي لهذه المنصة.
يمكن لمستخدمي خطة Blaze تهيئة قاعدة بيانات Realtime بسهولة لأخذ نسخ احتياطية تلقائية. يؤدي النقر على علامة تبويب النسخ الاحتياطية في قاعدة بيانات Firebase إلى الوصول إلى إعدادات النسخ الاحتياطي التلقائي.
قيود قاعدة Firebase
رقم القيد | التقييد | الوصف |
---|---|---|
1 | ليس مفتوح المصدر | Firebase ليست منصة مفتوحة المصدر، مما يحد من إمكانيات التخصيص والتعديل للمطورين. |
2 | إقفال البائعين | قد يؤدي استخدام Firebase إلى الاعتماد على هذه المنصة المحددة، مما يجعل من الصعب التحول إلى خدمات أخرى دون تغييرات كبيرة. |
3 | القيود الجغرافية | لا يمكن الوصول إلى خدمات Firebase، لكونها جزءًا من Google، في البلدان التي يتم فيها حظر خدمات Google، مثل الصين. |
4 | قواعد بيانات NoSQL فقط | تدعم Firebase قواعد بيانات NoSQL فقط، والتي قد لا تكون مناسبة لجميع أنواع التطبيقات، خاصة تلك التي تتطلب استعلامات ومعاملات معقدة. |
5 | الاستعلامات البطيئة | قد تواجه بعض خدمات Firebase، مثل Firestore، قيودًا في أداء الاستعلام، خاصةً للتطبيقات واسعة النطاق. |
6 | تعقيدات التسعير | قد تكون أسعار Firebase غير متوقعة ويصعب التنبؤ بها، خاصةً للتطبيقات ذات أنماط الاستخدام المتغيرة. |
7 | يقتصر على سحابة Google Cloud | يعمل Firebase حصريًا على Google Cloud، ولا يوفر أي مرونة للاستضافة على منصات سحابية أخرى. |
8 | عدم وجود خوادم مخصصة | لا تقدم Firebase خيارات خوادم مخصصة أو عقود مؤسسات، مما قد يحد من الأداء والتخصيص للتطبيقات الأكبر حجمًا. |
9 | لا توجد واجهات برمجة تطبيقات GraphQL | لا تدعم Firebase في الأصل واجهات برمجة تطبيقات GraphQL؛ يحتاج المطورون إلى تنفيذ حلول بديلة لاستخدام GraphQL. |
10 | التعقيد ومنحنى التعلم | يمكن أن تقدم مجموعة ميزات Firebase الشاملة منحنى تعليمي حاد، خاصةً للمطورين الجدد في تطوير التطبيقات المستندة إلى السحابة. بالإضافة إلى ذلك، يمكن أن تكون إدارة خدمات Firebase وتحسينها للتحكم في التكاليف والأداء أمراً معقداً. |
دعنا نستكشف قيود Firebase بمزيد من التفصيل أدناه:
1. ليست مفتوحة المصدر
Firebase ليس خيارًا مفتوح المصدر لتطوير تطبيقات الهاتف المحمول، مما يجعله خيارًا دون المستوى الأمثل للعديد من المطورين.
لا يستطيع المستخدمون تعديل شيفرة مصدر Firebase نظرًا لكونها مغلقة المصدر. بسبب هذا القيد، ينتهي الأمر بالعديد من المطورين الذين يحبون ميزات Firebase إلى استخدام منصات أخرى.
على الرغم من أن المنصة ليست مفتوحة المصدر، إلا أنه من المهم التأكيد على أن العديد من المكتبات وحزم تطوير البرمجيات متاحة على GitHub.(14)
قد يكون هذا هو أهم قيود Firebase ويمنع المجتمع من تحسين المنتج، وزيادة مستويات المرونة، وتوفير خيارات الاستضافة الذاتية للمطورين الذين لا يستطيعون تحمل أسعار Firebase.
يُرجى الرجوع إلى مقالة بدائل Firebase مفتوحة المصدر للاطلاع على الخيارات التي لا تعمل مع التقنيات المملوكة.
2. تأمين البائعين
من العوائق الرئيسية الأخرى لاستخدام Firebase هو حقيقة أنه يحتوي على موردين مقفلين.
إنها مشكلة كبيرة تمنع بعض المطورين من اختيار المنصة. قد يكون عدم إمكانية الوصول إلى التعليمات البرمجية المصدرية أمرًا صعبًا للغاية بالنسبة لبعض المطورين.
على وجه الخصوص، بالنسبة للتطبيقات الكبيرة، فإن الانتقال إلى بائعين آخرين ليس بالمهمة السهلة، ولإجراء هذه الخطوة، يجب إعادة بناء الواجهة الخلفية بالكامل من الصفر.
3. قاعدة Firebase لا تعمل في العديد من البلدان
Firebase هو نطاق فرعي من Google، والموقع الرسمي هو https://firebase.google.com. وهو محظور في العديد من البلدان.
Google محجوب ولا يمكن الوصول إليه في بلدان مثل الصين وخدمات Google الأخرى لأن الصين قد أعاقت عناوين URIs مع *.google.com و*.googleapis.com.
للاطلاع على قائمة كاملة بالدول، يُرجى الرجوع إلى تقرير الشفافية.(15)
لقراءة المقال بدائل Firebase في الصين لاكتشاف أفضل طريقة لاستضافة تطبيق في الصين.
4. يعمل فقط مع قواعد بيانات NoSQL
يقدم كل من خياري قاعدة بيانات Firebase، Firestore وقاعدة بيانات Firebase Realtime Database، بنية NoSQL، ولا يوجد خيار لاستخدام قاعدة بيانات علائقية.(16, 17)
- الاستعلامات المعقدة
التحدي الآخر الذي يواجهه المستخدمون مع قاعدة بيانات NoSQL هو تنفيذ الاستعلامات المعقدة.
على الرغم من التحسينات الكبيرة التي أدخلتها Firebase على Firestore السحابي مقارنةً بـ RTDB، إلا أن تشغيل الاستعلامات المعقدة لا يزال يمثل تحديًا لمستخدمين محددين.
يوضح المثال أعلاه المستخرج من StackOverflow التحديات التي يواجهها المستخدم الذي ينتقل من Parse إلى Firebase.(18)
من أمثلة مشاكل المستخدم المتعلقة بالتصفية، والجمع بين عوامل التصفية، والجمع بين استعلامات متعددة.
على الرغم من وجود حل لهذه الحالة ويمكن للمستخدم صياغة حل معقد باستخدام Firebase، إلا أن التنفيذ قد لا يكون بسيطًا بالنسبة للمبتدئين في استخدام المنصة.
- المعاملات
موضوع مثير للاهتمام على StackOverflow يناقش كيفية تعامل قاعدة بيانات Firebase Realtime Database مع خصائص ACID.(19)
على الرغم من أنها ستدعم المعاملات، إلا أنه سيتعين على المطورين تنفيذ التعليمات البرمجية الخاصة بهم، على عكس قاعدة البيانات العلائقية التقليدية، مما يجعل أنظمتهم أكثر تعقيدًا.(20)
- ترحيل البيانات ليس سهلاً مثل استخدام قاعدة بيانات SQL
وفقًا للمقال 5 أسباب لعدم استخدام Firebase، مع Firebase، لا يمكن للمستخدم التعامل بسرعة مع ترحيل البيانات على غرار قاعدة بيانات SQL البسيطة.
يستخدم Firebase JSON، ولا توجد ميزات SQL تقريبًا، لذا لن يكون الترحيل من قاعدة البيانات بنفس السهولة.
5. الاستعلامات البطيئة
لا تعتبر جميع قواعد البيانات مثالية لجميع حالات الاستخدام، ولا تُعدّ جميع قواعد البيانات مثالية لجميع حالات الاستخدام، ولا تُعدّ Cloud Firestore استثناءً.
على الرغم من أنه حل رائع لتوسيع نطاق تطبيقاتك وتوفير دعم الاستعلام دون اتصال بالإنترنت والتحديثات في الوقت الفعلي، إلا أن له قيودًا أيضًا.(21).
بعض الأمثلة على ذلك:
- تردد الكتابة محدود بـ 1 في الثانية;
- لا توجد استعلامات تجميع أصلية;
- الحد الأقصى لحجم طلب API 10 ميغابايت;
- الحد الأقصى لحجم المستند هو 1 ميغابايت;
- الحد الأقصى للاتصالات المتزامنة 1M;
- مرونة الاستعلام;
- استعلامات الاستعلامات بطيئة الأداء.
هناك مقالتان رائعتان يجب قراءتهما لمعرفة المزيد عن قيود Firestore. المقال الأول الرائع عن أهم 10 أشياء يجب معرفتها عن Firestore عند اختيار قاعدة بيانات لتطبيقك، والمقال الثاني لماذا يكون استعلامي في Firestore السحابي بطيئًا.
6. ليست كل خدمات Firebase مجانية لبدء التشغيل
على الرغم من أن معظم الخدمات متاحة ضمن خطة Spark Plan، إلا أن هذه القاعدة لها بعض الاستثناءات. ومن الأمثلة على ذلك الوظائف السحابية والتعلم الآلي.(7)
الوظائف السحابية متوفرة فقط على باقة Blaze، ولا يمكن للمستخدم تجربة الخدمة ضمن باقة Spark.
من المهم التأكيد على الحصة المجانية للوظائف السحابية، ولكن سيتم فرض رسوم بموجب خطة Blaze عندما يتجاوز المستخدم الحد المجاني.
تُعد واجهات برمجة تطبيقات Cloud Vision APIs ضمن ميزة التعلُّم الآلي المثال الثاني للخدمة غير المتوفرة ضمن خطة Spark. هذه الخدمة متاحة فقط لمستخدمي باقة Blaze Plan وتتقاضى 1.5 دولار أمريكي لكل ألف واجهة برمجة تطبيقات.
7. إنها باهظة الثمن ويصعب التنبؤ بأسعارها
Firebase هي منصة غنية بالميزات لتطوير تطبيقات الأجهزة المحمولة، وهي باهظة الثمن بالنسبة للبعض. وهي تقدم خطة مجانية، ولكنها تأتي مع بعض القيود.
وهذا هو السبب في أن العديد من المطورين ينتهي بهم الأمر إلى الاكتفاء بتطبيقات الاستضافة الذاتية مع خيارات مثل Digital Ocean أو AWS أو Google Cloud.
تضيف Firebase قيمة مضافة إلى مزود خدمة IaaS الخالصة، ولكن الراحة تأتي بثمن. بشكل عام، سيكون الاستضافة الذاتية للتطبيق أرخص من استخدام Firebase.(22)
لذا، قبل الذهاب إلى Firebase، يرجى التأكد من المقارنة الصحيحة بين التكاليف الأولية لإعداد مجموعة لدى مزود خدمة IaaS والتكاليف الجارية (الخوادم + التكاليف الهندسية الإضافية) لصيانة الخوادم مقابل تشغيل التطبيق مباشرةً على Firebase.
الجانب الآخر الذي يجعل Firebase باهظة الثمن هو أنها تقنية مملوكة ملكية خاصة، مما يتطلب عائدًا على الاستثمار الهندسي. من ناحية أخرى، يمكن للتقنيات مفتوحة المصدر استخدام قوة التطوير المجتمعي وتقديم حلول بأسعار معقولة.
توفر Firebase الخدمات في نموذج تسعير قائم على الاستخدام، ومن الصعب وضع حد أقصى للتسعير. لا تحتوي المنصة على خطط تسعير ثابتة، ويمكن أن يكون تتبع استخدام الموارد أمرًا صعبًا.
قد يكون تقدير تكاليف Firebase صعبًا على بعض المستخدمين، خاصةً عندما لا يمكن التنبؤ بمتطلبات قابلية التوسع. التسعير معقد، ولدى Firebase أسعار محددة لكل ميزة.
يمكن أن يكون الحفاظ على التكاليف تحت الحد الأدنى صعباً للغاية مع المنصة، ولا توجد طريقة سهلة لوضع حد أقصى أو وضع حدود صارمة للفاتورة.
ومع ذلك، هناك طرق لتعيين الميزانيات وتنبيهات الاستخدام وحتى وضع حد أقصى صريح لعدد الطلبات، وذلك بفضل تكامل Google Cloud. ومع ذلك، فإنها تتطلب منك أن تتجاوز Firebase وهي معقدة بعض الشيء لإعدادها.
لإدارة إنفاقك على أفضل وجه، يجب عليك استخدام ميزات Firebase على النحو الأمثل. تتضمن الأمثلة على ذلك تحسين كود الوظيفة السحابية الخاص بك للحصول على أوقات تشغيل أسرع والاختيار الصحيح بين RTDB و Firestore. على سبيل المثال، استخدم RTDB للتعامل مع البيانات الصغيرة ولكن عالية الإنتاجية وFirestore لمجموعات البيانات الأكبر أو عند الحاجة إلى استعلام معقد.
في الماضي، كانت Firebase تقدم باقة Flame. كانت تلك الباقة ذات سعر ثابت، 25 دولارًا شهريًا، والتي تم إيقافها في يناير 2020.(23, 24)
تسبب التغيير في هيكلية التسعير في حدوث مضايقات لبعض المستخدمين، كما أن الانتقال إلى الدفع حسب الاستخدام زاد من الرسوم في بعض الحالات. لمعرفة المزيد عن هذا الموضوع، يرجى قراءة المقال زيادة تكاليف Firebase بنسبة 7,000%!
يرجى ملاحظة أن البنية القائمة على الاستخدام ليست بالضرورة سيئة! فمعظم مزودي خدمات IaaS مثل AWS أو Azure يستخدمون هذا المبدأ أيضاً.
على الجانب الإيجابي، ستحاسبك على الموارد التي تستهلكها بالضبط وتوفر لك دقة أكبر في التفاصيل.
يُرجى التأكد من فهمك لكيفية عمل الفواتير قبل الالتزام بهذا النموذج ومراقبة تكاليفك بانتظام لتجنب الرسوم غير المتوقعة في نهاية الشهر.
8. يعمل فقط على سحابة Google Cloud
أصبحت Firebase الآن جزءًا من Google، وتعمل بنيتها التحتية بالكامل على سحابة Google.(25)
لا يوجد خيار لتشغيل Firebase على مزودي خدمات سحابية أخرى مثل AWS أو Azure أو Digital Ocean.
يحد Firebase من مستوى المرونة من حيث خيارات الاستضافة. لا توفر Firebase وصولاً على مستوى الخادم، وقد تنشأ مشاكل إذا كان تخصيص إعدادات الخادم ضرورياً.
9. نقص الخواديم المخصصة والعقود المؤسسية
لا يتوفر لمستخدمي Firebase خيار الخوادم المخصصة أو عقود المؤسسات.(23)
عدم توفير خوادم مخصصة هو قيد كبير. الطريقة الوحيدة لاستخدام Firebase هي عبر بنية بدون خوادم توفر مرونة أقل من بنية مجموعة مخصصة بالكامل.
كما أن مشاركة الموارد قد لا تحقق الأداء الأمثل بسبب الجيران المزعجين.
تُعد البيئة بدون خادم خيارًا ممتازًا للتطبيقات التي يتقلب عبء العمل عليها بمرور الوقت – على سبيل المثال، الذروة والهبوط خلال اليوم أو الأسبوع.
تخيل تطبيق حجز مطعم؛ ستعمل بيئة بدون خادم بشكل جيد لهذا التطبيق لأنها ستضمن تخصيص جميع موارد الخادم تلقائيًا خلال فترات الذروة في ليلة الجمعة/السبت.
من ناحية أخرى، فإن أعباء عمل العديد من التطبيقات لن تتقلب كثيراً ولكنها قد تتطلب إعدادات أمان مصممة خصيصاً أو بعض الوصول على مستوى الخادم. لن تكون البنية الخالية من الخوادم مناسبة لهذا السيناريو، والاستضافة المخصصة هي الخيار الأنسب.
لا تقدم Firebase خطط تسعير أو عقود أو مساعدة للمؤسسات، وهي مشكلة كبيرة للعديد من المستخدمين المحتملين. ومع ذلك، يمكن اعتبار خطة Blaze خياراً مناسباً للمطورين ذوي الاحتياجات على مستوى المؤسسات.
10. لا توفر واجهات برمجة تطبيقات GraphQL
لا توفر Firebase واجهات برمجة تطبيقات GraphQL كجزء من الإعداد القياسي. على الرغم من وجود حلول بديلة لتطبيق GraphQL مع Firebase، إلا أن REST لا يزال الخيار الافتراضي للمنصة.
لمعرفة المزيد عن GraphQL و Firebase، يرجى مراجعة هذا السؤال على StackOverflow.(26)
تسعير Firebase
تقدم Firebase خطة مجانية وقائمة على الاستخدام لمستخدميها. ومع ذلك، ليس لدى المستخدمين خطة ثابتة وبسعر موحد لالتقاطها والبدء بها.(7)
الخطة | الوصف |
سبارك (خطة مجانية) | باقة Spark Plan من Firebase مجانية، مع استضافة 10 جيجابايت، وSSL، ومواقع إلكترونية متعددة، ونطاق مخصص، والعديد من العروض الأخرى. يحتوي على ميزات قيمة مثل Firebase ML، وقاعدة البيانات في الوقت الحقيقي، و Cloud Firestore، ومختبر الاختبار. هذه بعض الخيارات التي يمكن للمرء الاستفادة منها مع خطة Firebase Spark Plan. |
بليز (ادفع كما تشاء) | خطة Blaze من Firebase متاحة في إطار نموذج تسعير مرن للدفع حسب الاستخدام. تأتي مع جميع ميزات خطة Spark Plan إلى جانب بعض الميزات الإضافية لتحسين تجربة التطوير. مع هذه الخطة، يتعين على المستخدمين دفع 0.026 دولار/جيجابايت للاستضافة ونفس المبلغ لكل جيجابايت من السعة التخزينية. يتم رفع العديد من قيود باقة Spark Plan مع باقة Firebase Blaze. يمكن أن تكون حاسبة خطة Blaze Plan المتوفرة على موقع Firebase الإلكتروني أداة مفيدة لحساب التكاليف التقديرية. |
تحتوي الباقة المجانية على بعض القيود، فعلى سبيل المثال، لا تمنح المطورين إمكانية الوصول إلى الوظائف السحابية.
Blaze هي خطة تسعير الدفع حسب الاستخدام مع تسعير مجزأ لمجموعات الميزات المختلفة، أي، Cloud Firestore، والوظائف السحابية، والمصادقة، والاستضافة، و Firebase ML، وقاعدة البيانات الفورية، والتخزين.
- خدمات Firebase المجانية دائماً
Firebase سخية بمجموعة من الخدمات المجانية دائماً التي تساعد العديد من المطورين على البدء في مشاريع تطوير تطبيقاتهم.
يمكن أن تكون هذه الخدمات مجانية، بغض النظر عن الباقة التي يختارها الشخص. انظر إلى الخدمات المختلفة المقدمة على المنصة على أنها “مجانية دائماً”.
- تسليم التطبيق للمختبرين.
- فهرسة التطبيقات للسماح لمحركات البحث بفهرسة التطبيقات
- عمليات نشر إصدارات التطبيق المختلفة الخاصة بالمستخدمين لاختبار A/B
- التنبؤ بأداء التطبيق والتقارير
- التفاعل النشط مع عملاء التطبيق من خلال الرسائل المتكاملة
- الإشعارات التلقائية ورسائل المستخدم عبر تطبيقات Android وiOS وتطبيقات الويب باستخدام رسائل Firebase Cloud.
- مراقبة أداء تطبيق Firebase
- الكشف عن أعطال التطبيقات باستخدام Firebase Crashlytics
- إعادة توجيه المستخدم عبر منصات مختلفة باستخدام روابط ديناميكية
- تخصيصات وظيفة التطبيق عن بُعد
- تتيح مكونات التعلم الآلي في Firebase تنبؤات للإبلاغ عن مستخدمي التطبيق العائدين.
- خدمات Firebase المدفوعة
يمكن الوصول إلى علامة تبويب الاستخدام في وحدة تحكم Firebase للتحقق من حالة دفع الخطة والبيانات المتعلقة بالاستخدام لخدمات Firebase المختلفة.
- علامة تبويب التخزين-تعرض علامة التبويب التخزين إجمالي كمية البيانات داخل قاعدة البيانات، بخلاف البيانات المخزنة عبر عروض Firebase الأخرى.
- علامة تبويب الاتصالات-تحتوي علامة التبويب الاتصالات على معلومات تتعلق بالعدد الإجمالي للاتصالات في الوقت الفعلي، بما في ذلك WebSockets.
- علامة تبويب التحميل-تحتوي علامة التبويب هذه على عروض بيانية لأحمال التطبيق وتعرض هذه البيانات للمستخدمين في فترة زمنية محددة.
- علامة تبويب التنزيلات-تحتوي على معلومات حول الحجم الإجمالي للبيانات التي تم تنزيلها من قاعدة البيانات.
لمزيد من المعلومات حول تسعير Firebase، يُرجى قراءة تسعير Google Firebase للمبتدئين.
خصوصية قاعدة Firebase
تدعم سياسة الخصوصية لدى Firebase سياسة الخصوصية GDRP، وهي اللائحة العامة لحماية البيانات من الاتحاد الأوروبي، وقانون خصوصية المستهلك في كاليفورنيا CCPA. كما تتوافق Firebase مع العديد من شهادات ISO وSOC، بما في ذلك 27001 و27017 و27018 و27018 و27018 و27018 و27018 و3.
يغذي Firebase بيانات الخدمة إلى Google للخدمات غير التابعة لـ Firebase. يتم تحديد هذا الخيار بشكل افتراضي؛ يجب على المستخدمين إلغاء تحديد المربع لتجنبه.
ميزات قاعدة البيانات النارية
لدى Firebase مجموعة واسعة من الميزات المتقدمة لاحتياجات المطورين.(27)
تُصنَّف الميزات ضمن البناء والإصدار والمراقبة والمشاركة. يتم استخدام Firebase كواجهة خلفية في مراحل مختلفة من تطوير تطبيقات الهاتف المحمول.
ميزة القاعدة النارية | الفئة | الوصف |
---|---|---|
Firestore | البناء | قاعدة بيانات NoSQL قائمة على السحابة لتخزين البيانات ومزامنتها. |
قاعدة بيانات الوقت الحقيقي | البناء | قاعدة بيانات مستضافة على السحابة تتيح مزامنة البيانات في الوقت الفعلي عبر المنصات. |
التكوين عن بُعد | البناء، والإصدار، والإشراك | تعديل سلوك التطبيق ومظهره دون نشر إصدارات جديدة. |
ملحقات قاعدة Firebase | البناء | مجموعة من الحلول المعبأة مسبقاً لتوسيع وظائف Firebase. |
التحقق من التطبيق | البناء | يساعد على حماية مواردك الخلفية من إساءة الاستخدام، مثل الاحتيال في الفوترة أو التصيّد الاحتيالي. |
وظائف السحابة | البناء | إطار عمل بدون خادم لتشغيل التعليمات البرمجية الخلفية استجابةً للأحداث. |
المصادقة | بناء، إشراك | يوفر مصادقة المستخدم وإدارته بطرق مختلفة. |
المراسلة السحابية | بناء، إشراك | خدمة توصيل الرسائل عبر المنصات بطريقة موثوقة. |
الاستضافة | البناء | تقدم استضافة المواقع مع نشر سريع وتوصيل آمن. |
التخزين السحابي | البناء | حل تخزين الملفات السحابية مع عناصر تحكم قوية في الوصول إلى البيانات. |
قاعدة Firebase ML | البناء | دمج التعلم الآلي في تطبيقاتك بأقل قدر من الخبرة. |
Crashlytics | إطلاق، إشراك | أداة الإبلاغ عن الأعطال في الوقت الفعلي التي تساعد في تتبع مشكلات الثبات وتحديد أولوياتها وإصلاحها. |
تحليلات Google | الإصدار | يوفر رؤى تفصيلية حول استخدام التطبيق ومشاركة المستخدم. |
مراقبة الأداء | الإصدار | يراقب أداء التطبيق لتحديد المشكلات وحلها بسرعة. |
مختبر الاختبار | الإصدار | اختبار التطبيق المستند إلى السحابة على الأجهزة الحقيقية والافتراضية. |
توزيع التطبيقات | الإصدار | يدير توزيع الإصدارات التجريبية من تطبيقك. |
اختبار أ/ب | إشراك | قم بإجراء تجارب لتحسين التطبيق من خلال تجارب المستخدم المضبوطة. |
المراسلة السحابية | إشراك | إشراك المستخدمين برسائل مستهدفة وذات صلة بالسياق. |
المراسلة داخل التطبيق | إشراك | إرسال رسائل لإشراك المستخدمين بنشاط أثناء استخدامهم للتطبيق. |
دعنا نستكشف بمزيد من التفصيل كل ميزة من الميزات.
قواعد البيانات – Firestore وقاعدة البيانات الفورية
قاعدتا بيانات منصة Firebase هما قاعدتا بيانات Firestore السحابية وقاعدة بيانات Realtime، وكلاهما أداتان قيّمتان لمتطلبات تطوير التطبيقات الحديثة.
Cloud Firestore، والمعروف أيضًا باسم Google Firestore، هو مكون منصة تطوير تطبيقات الهاتف المحمول Firebase.
وهي في الأساس قاعدة بيانات NoSQL قائمة على السحابة لتخزين البيانات ومزامنتها. يمكن لمستخدمي Firebase الوصول إلى Firestore من تطبيقات الهاتف المحمول أو الويب عبر حزم SDK الأصلية.
يمكن استخدام Cloud Firestore مع العديد من لغات البرمجة مثل Unity وC++C وJava وNode.js SDKs وواجهات برمجة تطبيقات REST وREST APIs ودعم RPC. تهدف قاعدة بيانات Firestore من Firebase إلى تقديم الأداء الأمثل والموثوقية والتوسع التلقائي وسهولة الاستخدام القياسي.
لمعرفة المزيد عن Firestore، يُرجى قراءة المقال ما هو Google Firestore.(28)
قاعدة بيانات Firebase Realtime Database هي قاعدة بيانات مستضافة على السحابة. وهي تسهّل تخزين البيانات المستندة إلى JSON وتنفذ مزامنة البيانات في الوقت الفعلي مع العملاء المتصلين.
تعمل المثيلات المفردة لقاعدة بيانات Realtime كعملاء أثناء عمليات تطوير التطبيقات عبر المنصات باستخدام حزم SDKs الخاصة بنظام التشغيل iOS وJavaScript وAndroid.
يتيح للتطبيقات تلقي آخر التحديثات والبيانات. يمكن للتطبيقات غير المتصلة بالإنترنت أن تظل مستجيبة لأن مجموعة تطوير البرمجيات SDK لقاعدة البيانات تنفذ استمرارية البيانات على القرص. يساعد على مزامنة الأجهزة مع حالات الخادم الحالية بعد استعادة الاتصال.(29)
لمعرفة المزيد حول الاختلافات بين Cloud Firestore وقاعدة بيانات الوقت الحقيقي، يُرجى قراءة مقالة Firestore مقابل قاعدة بيانات الوقت الحقيقي.
- التكوين عن بُعد
التهيئة عن بُعد هو حل سحابي يمكّن المستخدمين من تعديل سلوك التطبيقات ومظهرها دون تحديثها.
يمكن للمستخدمين أيضًا إنشاء قيم افتراضية داخل التطبيق لسلوك التطبيق وصيانة المظهر.(41)
- ملحقات قاعدة Firebase
ملحقات Firebase هي حلول مجمعة مسبقاً تساعد على تبسيط عملية التطوير من خلال أتمتة المهام اليومية.
وهي في الأساس عبارة عن مجموعات من التعليمات البرمجية القابلة للتكوين والنشر التي تتكامل بسلاسة مع Firebase وخدمات Google Cloud الأخرى.
يمكن للمطورين استخدام هذه الإضافات لوظائف مختلفة، مثل تغيير حجم الصور، أو تشغيل رسائل البريد الإلكتروني، أو المزامنة مع خدمات الجهات الخارجية. فهي تقلل من الحاجة إلى كتابة التعليمات البرمجية النمطية، وبالتالي تسريع تطوير المشروع.
من خلال تبسيط العمليات المعقدة، تسمح ملحقات Firebase للمطورين بالتركيز أكثر على بناء ميزات فريدة للتطبيق، مما يعزز الكفاءة والإنتاجية في دورة حياة تطوير التطبيق.
- التحقق من تطبيق Firebase App Check
Firebase App Check هي ميزة أمان مصممة لحماية موارد الواجهة الخلفية لقاعدة Firebase من الزيارات الاحتيالية والضارة.
إنه يتحقق من أن الطلبات الواردة إلى خدمات Firebase الخاصة بك هي بالفعل من تطبيقك الموثوق والموثوق به.
يحقق “التحقق من التطبيق” ذلك باستخدام تصديقات التطبيق، وهي رموز رقمية تؤكد شرعية التطبيق الذي يقدم الطلب.
من خلال دمج ميزة “التحقق من التطبيق”، يمكن للمطورين منع الوصول غير المصرح به وإساءة الاستخدام، مثل الاحتيال في الفوترة أو استرجاع البيانات غير المصرح به، مما يعزز الأمان العام لتطبيق Firebase الخاص بهم.
- وظائف السحابة
تُشير وظائف Firebase Cloud Functions إلى إطار عمل بدون خادم يُمكِّن المطورين من تنفيذ التعليمات البرمجية الخلفية للاستجابة لأحداث HTTPS وفعاليات تشغيل ميزات Firebase.
تخزّن Google Cloud شيفرة TypeScript أو JavaScript ويمكن تنفيذها في بيئة مُدارة.(31)
فهو يقلل من متطلبات توسيع نطاق الخوادم وإدارتها. للمزيد من المعلومات حول الوظائف السحابية، يرجى قراءة المقال ما هي وظائف Firebase السحابية؟
- المصادقة
المصادقة هي إحدى ميزات Firebase التي توفر مكتبات واجهة مستخدم جاهزة للاستخدام، وخلفيات دعم، وحزم SDK ملائمة لمصادقة تطبيقات المستخدم.
يتم دعم المصادقة من خلال أرقام الهواتف وكلمات المرور ومقدمي الخدمات مثل Google وTwitter وFacebook.(32)
تتمتع المصادقة بالتكامل مع خدمات Firebase المختلفة، وتستفيد من OpenID Connect و OAuth 2.0 وتسمح بتكامل الواجهة الخلفية المخصصة.
لمزيد من المعلومات حول مصادقة Firebase، يُرجى قراءة المقال ما هي مصادقة Firebase؟
- المراسلة السحابية
يشير مصطلح Firebase Cloud Messaging أو FCM إلى خدمة رسائل عبر المنصات للرسائل المجانية. تمكّن هذه الميزة مالكي التطبيقات من إخطار تطبيقات العملاء في حالة مزامنة البيانات أو رسائل البريد الإلكتروني ومتى تتم مزامنتها.(33)
تتيح FCM لمالكي التطبيقات إرسال إشعارات لتعزيز الاحتفاظ بالمستخدمين وإشراكهم. تسهل المراسلة السحابية نقل حمولة تصل إلى 4 كيلو بايت لحالات المراسلة الفورية.
للمزيد من المعلومات حول FCM، يُرجى قراءة المقال ما هي Firebase Cloud Messaging؟
- الاستضافة
لدى Firebase العديد من ميزات الاستضافة المرنة والقابلة للتطوير للخدمات المصغرة وتطبيقات الويب والعديد من أنواع المحتوى الأخرى.
يمكن استضافة المحتوى عبر فئات مختلفة، ويمكن للمستخدمين الاستفادة من حماية SSL والتراجع بنقرة واحدة.(34)
لمزيد من المعلومات حول استضافة Firebase Web Hosting، يرجى قراءة المقال ما هي استضافة Firebase؟
- التخزين السحابي
ميزة التخزين السحابي في Firebase هي خدمة لتخزين موارد تطوير التطبيقات، بما في ذلك الكائنات.
يحصل المستخدمون على إمكانية الوصول إلى أمان التحميل والتنزيل على مستوى Google مع هذه الميزة، وهي مناسبة لتخزين ملفات الوسائط ومحتوى المستخدم.(35)
لمعرفة المزيد عن Firebase Storage، يُرجى قراءة المقال Firebase Storage.
- التعلّم الآلي
Firebase ML هي مجموعة تطوير البرمجيات SDK للهاتف المحمول التي تسخّر قوة تعلّم الآلة من Google وتنفذها على تطبيقات iOS وAndroid من خلال حزمة ملائمة.(30)
يناسب استخدام وظيفة التعلم الآلي مع Firebase ML أي شخص بغض النظر عن مستوى خبرته.
لا تحتاج إلى معرفة متعمقة بتحسين النماذج أو الشبكات العصبية. يمكن للمطوّرين المتمرسين استخدام واجهات برمجة تطبيقات Firebase ML Kit للاستفادة من تطبيقات الهاتف المحمول مثل نماذج TensorFlow Lite.
لمزيد من المعلومات حول Firebase ML، يُرجى قراءة المقال ما هو Firebase Machine Learning؟
- Crashlytics
Crashlytics هي خاصية Firebase لمُبلِّغ الأعطال في الوقت الحقيقي، والتي تُمكِّن المطورين من تتبُّع المشكلات وتحديد أولوياتها ومعالجتها. يمكن استخدام خاصية Crashlytics لمنع مشاكل الاستقرار المحتملة.(36)
لمعرفة المزيد عن هذه الأداة، يرجى قراءة المقال ما هي أداة Crashlytics.
- Google Analytics
يُعد Google Analytics أداة تحليلات متقدمة تقدم رؤى تفصيلية حول استخدام التطبيق ومشاركة المستخدم.
وهو مدمج بسلاسة مع Firebase، ويُمكِّن المطورين من تتبع سلوك المستخدم وقياس أداء التطبيق وتحليل البيانات لاتخاذ قرارات مستنيرة.
يتيح هذا التكامل التقاط بيانات غنية ومستندة إلى الأحداث من تطبيقات Firebase الخاصة بك، مما يوفر رؤية شاملة لكيفية تفاعل المستخدمين مع تطبيقك.
فهو يساعد على فهم التركيبة السكانية للمستخدمين وأنماط استخدام التطبيق ومؤشرات الأداء الرئيسية الأخرى.
من خلال الاستفادة من هذه القوة المدمجة بين Firebase وGoogle Analytics، يمكن للمطوّرين تخصيص تطبيقاتهم لتلبية احتياجات المستخدمين بشكل أفضل، وتحسين تجربة المستخدم، ودفع استراتيجيات التسويق الفعّالة، كل ذلك من خلال واجهة تحليلات موحدة.
- مراقبة الأداء
Firebase Performance Monitoring هي خدمة تساعدك في الحصول على نظرة ثاقبة لخصائص أداء تطبيقاتك التي تعمل بنظامي iOS وAndroid والويب.(38)
يمكنك استخدام مجموعة أدوات SDK لمراقبة الأداء لجمع بيانات الأداء من تطبيقك. فهي تساعدك على فهم أين ومتى يمكن تحسين أداء تطبيقك بحيث يمكنك استخدام هذه المعلومات لإصلاح مشكلات الأداء.
- مختبر الاختبار
Firebase Test Lab هي بنية تحتية سحابية لاختبار التطبيقات. يتيح للمستخدمين اختبار تطبيقات iOS و Android الخاصة بهم من خلال عملية عبر العديد من الأجهزة والتكوينات.(39)
يمكن للمستخدمين أيضًا رؤية النتائج في وحدة تحكم Firebase، بما في ذلك لقطات الشاشة والسجلات ومقاطع الفيديو.
- توزيع التطبيقات
Firebase App Distribution هي ميزة توفر عرضاً شاملاً لبرنامج الاختبار التجريبي للمستخدم عبر منصتي Android وiOS. يمكن للمستخدمين تلقي ملاحظات مفيدة قبل مرحلة إنتاج الإصدار الجديد.(40)
يمكن للمستخدم إرسال إصدارات مبكرة من التطبيقات باستخدام خوادم CI أو وحدة تحكم. كما تصبح عمليات تثبيت التطبيقات أكثر سهولة للمختبرين.
- اختبار أ/ب
اختبار A/B هو إحدى ميزات Firebase التي تساعد المطورين على تقديم تجارب أفضل لمستخدمي التطبيقات من خلال تحسين إدارة التطبيق وتوسيع نطاقه وتحليله.
يمكن للمستخدمين اختبار التعديلات التي تم إجراؤها على واجهات المستخدم والميزات والحملات بسرعة قبل إطلاق التطبيق.(43)
- المراسلة داخل التطبيق
المراسلة داخل التطبيق هي إحدى ميزات Firebase لإشراك مستخدمي التطبيق النشطين باستخدام الرسائل السياقية. يمكن للمستخدمين تنفيذ إجراءات محددة داخل التطبيق للوصول إلى ميزات مختلفة أو فتح عروض معينة.(45)
بدائل Firebase
على الرغم من أن Firebase منصة ممتازة لتطوير التطبيقات، إلا أن هناك العديد من البدائل الرائعة بنفس القدر. إذا كنت تبحث عن بديل لـ Firebase في عام 2024، فإليك الخيارات التي نوصي بها.
البدائل | الفئة | الميزات الرئيسية | التسعير |
---|---|---|---|
Back4App | مفتوح المصدر، منخفض الكود | نموذج البيانات، واجهات برمجة تطبيقات GraphQL/REST APIs، وظائف بدون خادم | مجاناً، بدون خادم ابتداءً من 25 دولاراً شهرياً |
Parse | إطار عمل مفتوح المصدر | لوحة تحكم سهلة الاستخدام، وواجهات برمجة التطبيقات، ومحولات تخزين الكائنات | مجاناً للتحميل |
AWS Amplify | تطوير كامل المكدس | مخزن البيانات، والمصادقة، والتحليلات، وواجهات برمجة التطبيقات | فئة مجانية، الدفع حسب الاستخدام |
Backendless | تطوير التطبيقات المرئية | منشئ التطبيقات، واجهات برمجة التطبيقات، قواعد البيانات في الوقت الحقيقي | فئة مجانية، من 15 دولاراً شهرياً |
Kuzzle | إنترنت الأشياء والواجهة الخلفية | مجموعة إنترنت الأشياء، الواجهة الخلفية، المنصة كخدمة (PaaS) | مجاناً، خطط دعم مجانية تبدأ من 500 يورو/شهرياً |
Supabase | المصدر المفتوح | قاعدة البيانات، لوحة التحكم، التوثيق | فئة مجانية، من 25$/شهرياً |
Appwrite | خادم مفتوح المصدر | قاعدة البيانات والتخزين والجغرافيا والوظائف | بداية مجاناً، من 15 دولار/عضو/شهرياً من 15 دولار/شهرياً |
Ably | البنية التحتية في الوقت الحقيقي | قنوات PubSub، بيئات متعددة المستخدمين | فئة مجانية، الدفع حسب الاستخدام |
Hasura | محرك GraphQL | واجهة برمجة تطبيقات GraphQL، التخزين المؤقت، الأمان | فئة مجانية، احترافية تبدأ من 1.5 دولار/ساعة |
Nhost | واجهة خلفية بدون خادم | قاعدة بيانات الوقت الحقيقي، واجهة برمجة تطبيقات GraphQL | فئة مجانية، من 25$/شهرياً |
الخاتمة
تشرح هذه المقالة مزايا Firebase وجوانبه السلبية، وهيكل التسعير، والميزات الأساسية، وأفضل المنصات البديلة.
Firebase هي منصة تطوير تطبيقات الجوّال من Google. وتتضمن مزاياها بيئة تطوير شاملة، ووقتاً أسرع لإنشاء التطبيقات وبنية تحتية قابلة للتطوير.
على الرغم من أنه منتج رائع، إلا أن Firebase له سلبيات. إنها منصة مغلقة المصدر، ولديها نظام أساسي مغلق المصدر، ولديها تأمين من البائعين، وتوفر قواعد بيانات NoSQL فقط.
من ناحية التسعير، تعمل Firebase تحت خطتين مختلفتين. الأولى هي Spark، والتي توفر فئة مجانية سخية وتشمل معظم ميزات Firebase.
الخطة المدفوعة تسمى Blaze وتعمل وفق نموذج قائم على الاستخدام. فهي تفرض رسومًا على التطبيق بناءً على عبء العمل المستخدم.
يقسم Firebase ميزاته إلى ثلاث فئات رئيسية: الإنشاء، والإصدار والمراقبة، والمشاركة. تُستخدم جميعها في مراحل مختلفة من دورة تطوير التطبيق.
لدى Firebase الكثير من المنافسين، بما في ذلك Back4app و Backendless و AWS Amplify و Parse.
نأمل أن تساعدك هذه المقالة على فهم Firebase بشكل أفضل وتحديد ما إذا كنت تريد استخدام هذه الخدمة.