تخطَّ إلى المحتوى

مقدمة في Firebase: خدمات Google الجاهزة

الدرس 1 من 9 · Firebase

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

Firebase منصة من Google تقدّم مجموعة من الخدمات السحابية الجاهزة لمطوري تطبيقات الموبايل والويب. بدأت كشركة ناشئة عام 2011، ثم استحوذت عليها Google عام 2014، وأصبحت اليوم من أشهر الأدوات بين المطورين.

يوصف Firebase بأنه Backend as a Service (BaaS)، أي «الخادم كخدمة». فبدلاً من أن تبني الخادم وتديره بنفسك، تستأجر خدمات جاهزة وتربطها بتطبيقك ببضعة أسطر من الكود.

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

الخدمة وظيفتها
Authentication تسجيل دخول المستخدمين بالبريد، أو بحساب Google، أو برقم الهاتف
Cloud Firestore قاعدة بيانات NoSQL سحابية تخزن البيانات كمستندات ومجموعات
Realtime Database قاعدة بيانات أقدم تتزامن لحظياً بين الأجهزة
Cloud Storage تخزين الملفات مثل الصور والفيديوهات
Hosting استضافة مواقع الويب بسرعة وأمان
Cloud Messaging إرسال الإشعارات إلى الهواتف
Analytics و Crashlytics فهم استخدام تطبيقك وتتبع الأعطال

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

Firebase يعمل مع منصات كثيرة: أندرويد و iOS والويب و Flutter. والثنائي Flutter و Firebase شائع جداً، لأن كليهما من Google ومتكاملان بشكل ممتاز. فيمكنك بناء تطبيق كامل بتسجيل دخول وقاعدة بيانات دون أن تكتب سطراً واحداً من كود الخادم.

  1. افتح Firebase Console (console.firebase.google.com) وسجّل الدخول بحساب Google.
  2. اضغط إضافة مشروع (Add project)، واختر اسماً لمشروعك.
  3. أضف تطبيقك إلى المشروع: اختر المنصة (أندرويد، أو iOS، أو ويب).
  4. ستحصل على إعدادات الربط، وهي بيانات تعرّف تطبيقك على مشروع Firebase.
  5. فعّل الخدمات التي تحتاجها، مثل Authentication و Firestore.

هذا شكل ربط تطبيق ويب بـ Firebase باستخدام JavaScript، فقط لتأخذ فكرة:

import { initializeApp } from "firebase/app";
const firebaseConfig = {
apiKey: "...",
projectId: "my-project",
// باقي الإعدادات من Firebase Console
};
const app = initializeApp(firebaseConfig);

السطر الأخير يربط تطبيقك بمشروع Firebase، وبعدها تستطيع استخدام أي خدمة. سنشرح الخطوات بالتفصيل في درس «إنشاء مشروع».

التكلفة: هل Firebase مجاني؟

Section titled “التكلفة: هل Firebase مجاني؟”

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

المزايا:

  • سرعة كبيرة في بناء التطبيقات، فلا تحتاج لبناء خادم.
  • بنية تحتية قوية من Google تتحمل ملايين المستخدمين.
  • تزامن لحظي، وخطة مجانية للبداية.

العيوب:

  • الارتباط بمنصة واحدة: إذا أردت الانتقال لاحقاً إلى خدمة أخرى، سيكون ذلك صعباً.
  • التكلفة مع النمو: التطبيقات الكبيرة جداً قد تصبح تكلفتها مرتفعة.
  • محدودية بعض الاستعلامات: Firestore لا يدعم كل أنواع البحث التي توفرها قواعد SQL.
  1. ادخل إلى Firebase Console بحساب Google الخاص بك.
  2. أنشئ مشروعاً تجريبياً باسم my-first-firebase.
  3. تجوّل في القائمة الجانبية وتعرّف على أسماء الخدمات التي ذكرناها في الجدول.
  4. افتح Firestore Database واقرأ الخيارات المعروضة (لا تحتاج أن تنشئ شيئاً الآن).
  • ترك قاعدة البيانات مفتوحة: قواعد الأمان المفتوحة للجميع مقبولة للتجربة فقط وليوم أو يومين.
  • الخلط بين Firestore و Realtime Database: هما خدمتان مختلفتان. للمشاريع الجديدة، Firestore هي الخيار الأشهر.
  • رفع إعدادات حساسة: ملفات الإعدادات العادية ليست سراً، لكن مفاتيح الخدمة الإدارية (Service Account) سرية جداً، فلا ترفعها أبداً على GitHub.

سؤال

ماذا يعني أن Firebase «Backend as a Service»؟

سؤال

أي خدمة في Firebase مسؤولة عن تسجيل دخول المستخدمين؟

  • Firebase منصة من Google تقدّم خدمات الخادم جاهزة (BaaS) لتطبيقات الموبايل والويب.
  • أهم خدماته: Authentication و Firestore و Storage و Hosting و Cloud Messaging.
  • قواعد بياناته تتزامن لحظياً بين الأجهزة، ويتكامل بشكل ممتاز مع Flutter.
  • تبدأ من Firebase Console بإنشاء مشروع وربط تطبيقك به.
  • فيه خطة مجانية للتعلم، واحمِ بياناتك دائماً بقواعد الأمان.