مرحبا، بعد اتمام دورة اندرويد و تنفيذ كم مشروع صغير ، و اتمام لغة جافا وصلت لمرحلة اختيار لغة داتا بيز فما الافضل mysql او firebase لاتعلمه حاليا مع العلم انهيت دورة mysql بس باقي تعلم طريقة الربط بالتطبيق و الجافا ، و اكيد بالاخر رح اتعلم اللغتين بس للخبراء بالمجال شو بتنصحوني و شو الفرق بيناتن و شكرا .
اختيار MYSQL او firebase
هذا الأمر يعود إلى نوع العمل الذي سوف تقوم به، Firebase و MySQL ليست تقنيات قواعد البيانات الوحيدة المتاحة في السوق. هناك المئات منهم إن لم يكن الآلاف. أيهم هو الحل المناسب لك هو عائد لطبيعة العمل الذي تعمل عليه.
يجب أن تفكر في أي تقنية كأداة في صندوق الأدوات الخاص بك. لا يمكن أن تجد شخص يسأل "هل يجب علي اتسخدم مفك براغي أو مفتاح ربط؟". يعتمد الاختيار هنا على نوع العمل الذي سوف تقوم به على هذا الأساس يمكن اختيار الأنسب للعمل.
يعد Firebase و MySQL من تقنيات قواعد البيانات الشائعة جدًا التي يستخدمها مئات الآلاف من المطورين إن لم يكن الملايين. هذا يعني أن كلاهما يتمتع بنقاط قوة وأنهما مناسبان لمواقف معينة.
Firebase و MySQL تقنيات مختلفة إلى حد كبير. هناك العشرات من تقنيات التخزين الشائعة التي تقع بين هذين الطيفين. من الصعب جدًا شرح الفروق بين التقنيتين هنا فهي تحتاج إلى مقالات مطولة لمعرفة الاختلافات جميعها لكن يمكننا اختصار الفرق بين التقنيتين هكذا،
Firebase عبارة عن مخزن مستندات قائم على Cloud ومناسب لتطبيقات الوقت الحالي. Firebase مملوك لشركة Google وهو متاح فقط على GCP (Google Cloud Platform)
MySQL هو نظام لإدارة قواعد البيانات المتبطة ببعضها البعض(RDBMS) يستخدم في الغالب للبيانات والمعاملات المترابطة. تقنية مفتوحة المصدر ، ويمكنك تثبيتها في أي مكان ويدعم العديد من الإصدارات المختلفة من التطبيقات.
لكل واحدة استخداماتها و سلبياتها و إيجابياتها .....
يمكنك مشاهدة الرابط التالي لرؤية مقارنة بسيطة بينهم :
و يمكننا أن نذكر بعض النقاط التالية :
1-تتألف الفايربيز من وثائق JSON بالكامل، بالتالي، ففي أي وقت يمكنك تغيير محتويات الوثائق، اضافة/حذف الخانات دون أي مشاكل بينما في mysql قد يكون هناك ترابطات و قيود معينة.
2-خدمة فايربيز توفر لك مكتبة كاملة ﻻجراء العمليات بشكل متزامن أو غير متزامن دون أي قلق أو كتابة أكواد مطولة بينما mysql قد تتطلب منك معرفة برمجية بأحد لغات الباك اند حتى تتواصل و تتعامل معها.
3-يمكن القول عن خصائص البحث في الفايربيز أنها ضعيفة جداً، مقيدة جداً وﻻ تقارن بما هو موجود في mysql .
4- مع أنه يمكنك كتابة دوال وسيطة في فايربيز لاجراء هذا اﻷمر، لكن في كثير من اﻷحوال قد يصبح اﻷمر مزعجاً وصعب التعاطي معه.. لغياب تأكيد البيانات Validation .
وباختصار :
إذا كان عند تطبيق يحتاج وجود ال realtime فعليك بالفايربيز .
إذا كان تطبيقك بسيطاً ولا يحتوي على ترابطات أو قيود كبيرة فعليك بالفايربيز.
إذا كان التطبيق معقداً و يحتوي عمليات كثيرة فقطعاً يجب استخدام MySql.
إذاً كل واحدة لها استخدامها لا غنى لأحدها عن الآخر.
mysql
تقنية قواعد البيانات مفتوحة المصدر تقوم بتخزين البيانات وإدارتها وفقا لطريقة العمل الخاصة بك فهي من أقوى قواعد البيانات المعروفة والسهل التعامل معها فهي محببة للجميع
firebase
فهي إحدى أدوات جوجل لتخزين البيانات وإدارتها وفق آلية موحدة فهي تصلح لبناء نظام API بدون الحاجة إلى موقع ويب خاص، تخدم برامج الاندرويد بقوة فمع هذه الأداة يمكنك بناء أشكال ضخمة من برامج الويب دون الحاجة إلى استضافة وموقع خاص فهي مخصصة لإنشاء تطبيقات الهاتف المحمول والويب
يمكنك استخدام نوعي قاعدة البيانات في تطبيقك
Firebase: تمكنك من تفعيل عدة خدمات بسهولة بدون كتابة كود (الإشعارات - تسجيل الدخول من غوغل و فيسبوك ,sms - تسجيل تطبيق دردشة - قاعدة بيانات بسيطة للمستخدم - ..) أشياء غير مترابطة أو معقدة و تعطيك أداء عالٍ (سيرفرات غوغل قوية) ..
mysql : اجعلها قاعدة البيانات الأساسية وتمكنك من تحكم 100% بالعلاقات و المعلومات المترابطة بين مكونات التطبيق و إدارتها بالطريقة التي تعجبك لكنها تحتاج لخبرة برمجة عالية (لتحقيق كفائة في الأداء) و تحتاج لسيرفر قوي في حال كان الموقع يخدم عدد كبير من الزوار ..
التعليقات