پلتفرم توسعه نرم افزار Firebase در سال 2011 توسط کمپانی Firebase inc راه اندازی شد و شرکت گوگل آن را در سال 2014 خریداری کرد. فایربیس به عنوان یک دیتابیس Real-Time دارای 18 سرویس و API های اختصاصی است که 4 سرویس آن در حال حاضر به صورت بتا فعالیت دارد.
پلتفرم فایربیس یک سرویس BaaS محسوب می شود که برای توسعه، تستینگ و مدیریت برنامه های موبایل و وب مورد استفاده برنامه نویسان قرار می گیرد. در حقیقت سرویس Baas به برنامه نویس این امکان را می دهد تا بدون نیاز به مدیریت دیتابیس و سخت افزارهای مربوطه، سرویس های مورد نیاز را از طریق API های اختصاصی به اپلیکیشن مورد نظر خود متصل کند.
به طور کلی 7 سرویس در فایربیس وجود دارد که تمام مولفه های Back-End مورد نیاز یک اپلیکیشن را پوشش می دهد. فایربیس همچنین قابلیت ادغام با پلتفرم های دیگری نظیر اندروید، iOS، Web و Unity را دارد. در ادامه این مقاله سرویس های پلتفرم Firebase را به صورت مختصر بررسی خواهیم کرد.
یکی از ابزارهای رایگانی که فایربیس (firebase) به کاربران میدهد analytic میباشد.
این سرویس امکاناتی به کاربران میدهد که آمار برنامهها و اپ های خود را داشته باشند و گزارشی از استفاده های مختلف آن ومعیار های مختلف آن را ببینند.
این سرویس با نام google cloud messaging یا GCM شناخته میشود.
این سرویس یک سرویس ارسال و دریافت پیام و نوتیفیکیشن برای اندروید و iOS و برنامههای تحت وب میباشد.
این سرویس نیز به شکل رایگان در اختیار کاربران قرار می گیرد.
سرویسی است که امکان احراز هویت کاربران را به برنامههای موبایل و وب می دهد.
این سرویس همچنین قابلیت احراز هویت کاربران را با اکانت های شبکههای اجتماعی مانند فیس بوک و توییتر و گیت هاب و گوگل را دارد.
علاوه بر این امکانات این سرویس اجازه میدهد که کاربران با استفاده از ایمیل و پسوردها اکانت های خودشان را فعال کنند.
فایربیس یک دیتابیس real time را در قالب یک سرویس به کاربران ارائه میدهد.
این سرویس در قالب یک سری API،اجازه میدهد که کاربران برنامههای خود را از جاهای مختلف با هم sync کنند و داده هایشان با استفاده از دیتابیس real time هماهنگ و یکپارچه شود.
همچنین کاربران میتوانند با استفاده از این API ها دادههای خود را در سرویس های cloud مربوط به firebase ذخیره کنند و به راحتی آنها را بخوانند.
fire base برای زبانهای مختلف کتابخانههایی ارائه میدهد که میتوان به کمک آنها با سرویس دیتابیس کار کرد.
این کتابخانهها به زبانهای اندروید و iOS, javascript, java, Objective-C, Swift, Node.js می باشد.
همچنین دیتابیس دارای امکاناتی برای کار با web api های REST میباشد که میتوان با استفاده از فریمورک های جاوا اسکریپت نیز با آن کار کرد.
برای مثال AngularJs, React, EmberJs, Backbone.Js میتوانند به راحتی با firebase کار کنند.
API های REST بر پایه پروتکل SSE نوشته شدهاند که میتوانند به سرعت و به شکل امن دادههای خود را ارسال و از سمت سرور هم notificationدریافت کنند.
سرویس ذخیره سازی firebase یک سرویس امن برای آپلود و دانلود فایلهای مربوط به اپ firebase شما میباشد.
یکی از مزیتهای این سرویس این است که مهم نیست که سرعت اینترنت شما چقدر باشد و به راحتی میتوانید با این سرویس کار کنید.
کاربران میتوانند از این سرویس استفاده کرده و فایلهای صوتی و تصویری و عکسها و محتوای خود را داخل این سرویس ذخیره کنند.
سرویس ذخیره سازی firebase توسط سرویس کلود گوگل پشتیبانی میشود که این سرویس بسیار قدرتمند و ساده می باشد.
این سرویس برای هاستینگ فایلهای html, css, javascript و سایر بخشهایی میباشد که به صورت داینامیک تغییر نمی کنند.
این سرویس فایلها را در قالب CDN, HTTPS, SSL ارائه میدهد.
سرویس تست برنامههای اندروید فایربیس(firebase):
سرویس تست برنامههای اندروید firebase یک زیرساخته بر پایه کلود میباشد که میتوان به کمک آن برنامههای نوشته شده برای اندروید را تست کرد.
در این سرویس برنامه نویسان میتوانند برنامههای نوشته شده خود را با انواع و اقسام دستگاههای اندرویدی تست و خطایابی نمایند.
دستگاههای اندرویدی برای تست بسیار متنوع بوده و دارای پیکربندی های مختلف میباشند.
حتی اگر برنامه نویس برای برنامه خود تست ننوشته باشد با استفاده از سرویس firebase برنامه نویس میتواند در برنامه خود به دنبال مشکلات باشد.
از آن گزارش بگیرد و جایی را که برنامه کرش میکند پیدا کند.
این سرویس یک گزارش با جزئیات زیاد از خطاها تولید میکند که برنامه نویس میتواند از آن استفاده کند.
در این گزارش خطاها بصورت دسته بندی و کلاسه بندی نمایش داده میشوند.این گزارش خطا شبیه گزارش stack trace می باشد.
با استفاده از امکاناتی که شرکت گوگل در firebase ارائه کرده است میتوان آینده این تکنولوژی را بسیار روشن دید.
در زیر برخی از سازمانهای معتبری که بهfirebase متکی هستند را مشاده می کنید:
این پلتفرم با دارا بودن 7 سرویس در خود تمام انتظارات بک-اند(Back-End) مورد نیاز یک اپلیکیشن را مورد پوشش میدهد. به طور کلی وبسایت اصلی فایربیس، خدمات این پلتفرم را به 3 دسته تقسیم کرده است: