HOTLINE

(0275) 2974 127

CHAT WA 24/7
0859-60000-390 (Sales)
0852-8969-9009 (Support)
Blog

Pengertian Firebase Dan Bagaimana kelebihan kekurangannya?

Diartikel kali ini kita akan membahas mengenai apa itu Firebase?Mulai dari pengertian,kelebihan kekurangan,perkembangannya dan masih banyak lagi lainnya.

Pengertian Firebase

Merupakan suatu layanan yang digunakan untuk mempermudah para pengembang aplikasi dalam mengembangkan aplikasi.Firebase atau BaaS(Backend as a Service) merupakan cara developer yang fokus mengembangkan aplikasi tanpa perlu memberikan effort besar.

Perkembangan Firebase

Aplikasi ini berevolusi dari Envolve,startup sebelumnya yang didirikan oleh James Tamplin dan Andrew Lee pada Tahun 2011.Setelah merilis layanan obrolan,James Tamplin dan Andrew Lee menemukan bahwa Envolve digunakan untuk mengirimkan data aplikasi yang bukan pesan obrolan.James Tamplin dan Andrew Lee mendirikan Firebase sebagai perusahaan terpisah pada bulan April 2012.

Firebase Inc,awal mengumpulkan dana pada bulan Mei 2012 yang mana meningkatkan pendanaan seri A pada bulan Juni 2013.Pada bulan Oktober 2014,Firebase diakuisisi oleh Google.Pada bulan Oktober 2015,Google mengakuisisi Divshot untuk menggabungkannya dengan Tim Firebase. Sejak akuisisi, Firebase telah berkembang di Google dan memperluas layanan untuk menjadi platform terpadu bagi pengembang aplikasi.Firebase sekarang terintegrasi dengan berbagai layanan Google lain,untuk menawarkan produk dan skala yang lebih luas bagi pengembang aplikasi.Pada bulan Januari 2017,Google mengakuisisi Fabric dan Crashlytics dari Twitter untuk bergabung dengan layanan tersebut ke Tim Firebase.Firebase meluncurkan Cloud Firestore,sebuah database dokumen, pada bulan Oktober 2017.

Fitur Firebase

  • Firebase Cloud Messaging

firebase Cloud Messaging (FCM) dapat mengirim dan menerima pesan lintas platform seperti Android,iOS dan aplikasi web yang pada tahun 2016 dapat digunakan tanpa biaya.Firebase Cloud Messaging (FCM) adalah layanan yang diberikan Firebase untuk menggantikan Google Cloud Messaging.Pihak Google menyarankan untuk aplikasi yang masih menggunakan Google Cloud Messaging untuk segera migrasi ke Firebase Cloud Messaging.Fitur yang diberikan oleh Firebase Cloud Messaging sebenarnya tidak terlalu jauh berbeda dengan Google Cloud Messaging. Dengan Firebase Cloud Messaging bisa memberikan pemberitahuan dan membuat komunikasi dua arah antara perangkat.Teknologi yang digunakan terbagi 2 yaitu : XMPP (Extensible Messaging and Presence Protocol) dan HTTP (Hypertext Transfer Protocol).Untuk XMPP harus membangun server XMPP terlebih dahulu,sedangkan untuk HTTP bisa menggunakan console yang disediakan oleh Firebase.

  • Firebase Authentication

Firebase Authentication adalah layanan sistem otentikasi yang menerapkan kode client-side,sehingga pengguna dapat mendaftar dan login ke aplikasi Facebook,Github,Twitter dan Google(Google Play Games)Google dan juga Firebase termasuk sistem manajemen pengguna di mana pengembang dapat mengaktifkan otentikasi pengguna dengan login email dan kata sandi yang disimpan dengan Firebase.Sebagian besar aplikasi perlu mengetahui identitas pengguna agar aplikasi dapat menyimpan data pengguna secara aman di cloud dan memberikan pengalaman personal yang sama di setiap perangkat pengguna.Firebase Authentication mendukung otentikasi menggunakan sandi,nomor telepon,penyedia identitas gabungan yang populer,seperti Google,Facebook dan Twitter dan lainnya.

  • Firebase Remote Config

Merupakan fitur yang digunakan untuk melakukan perubahan konfigurasi di dalam aplikasi Android ataupun iOS tanpa harus melakukan pembaruan aplikasi.Cara kerja dari Remote Config : aplikasi menyimpan terlebih dahulu file XML yang berisi parameter yang nilainya akan bisa diganti melalui console Firebase.Kemudian objek firebase di dalam aplikasi akan melakukan request data dari server,kemudian memproses data tersebut.Secara umum,objek Firebase di dalam aplikasi akan melakukan request 12 jam / 1x, tetapi hal tersebut bisa diubah sesuai yang diinginkan.Salah satu catatan dari Google yakni tidak boleh menggunakan Remote Config untuk melakukan perubahan krusial,seperti mengubah ijin yang dibutuhkan oleh aplikasi.

  • Firebase Realtime Database

Menyediakan realtime database dan back-end sebagai layanan.Fitur ini menyediakan pengembang antarmuka pemrograman aplikasi yang memungkinkan data aplikasi disinkronkan di seluruh klien dan disimpan di Firebase cloud.Perusahaan menyediakan pustaka klien yang memungkinkan integrasi dengan Android,iOS,Javascript,Java,Swift dana Node.js.Aplikasi ini dapat diakses melalui REST API dan mengikat untuk beberapa JavaScript Frameworks seperti AngularJS,React,Ember.js dan Backbone.js.Developer yang menggunakan realtime database dapat mengamankan data dengan menggunakan aturan keamanan yang diberlakukan oleh server perusahaan.Cloud Firestore yang merupakan generasi mendatang dari Firebase Realtime Database dirilis untuk penggunaan beta.Firebase Realtime Database merupakan database yang di-host pada cloud. Data disimpan sebagai JSON dan disinkronkan secara realtime ke setiap klien yang terhubung.

  • Firebase Storage

Firebase Storage dirancang untuk pengembang aplikasi yang menyimpan dan menampilkan konten buatan pengguna,seperti foto atau video dan menambahkan keamanan Google pada unggah dan unduh berkas untuk aplikasi Firebase,bagaimanapun kualitas jaringannya.Pengembang dapat menggunakan untuk menyimpan gambar,audio, video atau konten lain yang dibuat pengguna secara langsung dari Firebase SDK Klien. Firebase Storage didukung oleh Google Cloud Storage.

  • Firebase Hosting

Menyediakan hosting cepat dan aman untuk aplikasi web serta konten yang statis dan dinamis.Firebase Hosting adalah layanan hosting web statis dan dinamis mendukung hosting berkas statis seperti CSS,HTML,JavaScript dan berkas lain,serta dukungan melalui Cloud Functions.Layanan ini mengirim berkas melalui Content Delivery Network (CDN) atau melalui enkripsi HTTP Secure (HTTPS) dan Secure Sockets Layer(SSL).Firebase bermitra dengan Fastly,CDN,untuk menyediakan CDN yang mendukung Firebase Hosting.Perusahaan menyatakan bahwa Firebase Hosting tumbuh dari permintaan pelanggan,pengembang menggunakan Firebase untuk realtime database tetapi membutuhkan tempat untuk menghost konten.

Dua fitur menarik yakni Firebase Remote Config dan Firebase Realtime Database.Secara sederhana,Remote Config adalah fitur yang memungkinkan pengembang mengganti atau mengubah beberapa konfigurasi aplikasi Android/ iOS tanpa harus memberikan pembaruan aplikasi melalui Play Store / App Store.Salah satu konfigurasi yang bisa dimanipulasi adalah seperti warna atau tema aplikasi.Sedangkan Firebase Realtime Database adalah fitur yang memberikan sebuah NoSQL database yang bisa diakses secara waktu nyata oleh pengguna aplikasi. Dan hebatnya adalah aplikasi bisa menyimpan data secara lokal ketika tidak ada akses internet,kemudian melakukan sinkronisasi data segera setelah mendapatkan akses internet.

Kelebihan Dari Firebase

  • Terdapat versi gratis,sehingga para developer dapat mencoba layanan Firebase tanpa batasan waktu.
  • Cepat dan responsif.
  • Tanpa SQL,Firebase menggunakan JSON.
  • SDK tersedia untuk Android, iOS,JavaScript,Java,Objective-C,swift dan Node.js.
  • User friendly.
  • Event-oriented.
  • Build-in graphic editor.
  • Powerful API untuk menyimpan dan sinkronasi.
  • API relatif mudah dimengerti.
  • Realtime backend.
  • Memudahkan bagi front-end developer yang kurang memahami back-end.
  • Dokumentasi & Costumer Support.

Kekurangan Dari Firebase

  • Jumlah koneksi node tidak ditampilkan,yang mana pada versi gartis dibatasi 100.
  • Format penyimpanan tidak menggunakan SQL,melainkan JSON yang mana akan menyulitkan ketika melakukan migrasi.
  • Firebase tidak memberatkan developer pada server-side,maka konsekuensinya perlu kerja keras menggunakan API dalam kode kita di front-end/client-side.
  • Ketika aplikasi kita menggunakan database terpusat yang dapat di update (write) oleh banyak pengguna,maka akan menjadi overkill
  • Tak ada fungsi reference ataupun join.
  • Versi gratis hanya memberikan 100 koneksi dan 1 GB storage,yang mana perlu melakukan upgrade jika pengguna kita bertambah.
  • Kita tak tahu dimana lokasi host data kita.
  • Karena data kita berada dalam host bukan milik kita,
  • akan menjadi mustahil untuk merecovery akun user.

Cara Kerja Firebase

Dengan Firebase Realtime Database : Membuat aplikasi kolaboratif dan kaya akan  fitur dengan menyediakan akses aman ke database langsung dari kode sisi klien.Data disimpan di drive lokal,ketika dalam mode offline,peristiwa real-time terus berlanjut,ini yang memungkinkan pengguna akhir untuk merespons dengan cepat.Ketika koneksi perangkat dibangun kembali,database realtime menyinkronkan perubahan data lokal dengan pembaruan jarak jauh yang terjadi saat klien offline sehingga setiap penyimpangan digabungkan secara otomatis.Basis Data Realtime menawarkan bahasa aturan berbasis ekspresi fleksibel dan sebagai Firebase Realtime Database Security Rules,ini menentukan bagaimana data disusun dan kapan data dapat dibaca atau ditulis.Ketika terintegrasi dengan otentikasi Firebase,Developer dapat menentukan siapa yang memiliki akses ke data tertentu dan bagaimana mereka dapat mengaksesnya.

Realtime Database adalah database NoSQL dan karena itu memiliki pengoptimalan dan fungsionalitas berbeda dari basis datanya.API basis data waktu nyata memungkinkan hanya operasi yang dapat dilakukan dengan cepat.Dengan cara ini,kalian dapat membangun pengalaman real-time luar biasa dan melayani jutaan pengguna tanpa mengurangi daya tanggap.Karena itu,penting untuk mempertimbangkan bagaimana pengguna mengakses data dan kemudian membuat struktur data yang memenuhi persyaratan tersebut.

sekian artikel kali ini semoga bisa bermanfaat untuk kalian semua 🙂

3.5/5 - (2 votes)
feni

Recent Posts

Baca Ini Untuk Pelajari Apa Saja Job Description Web Developer

Job description seorang web developer adalah membuat situs web menggunakan berbagai bahasa pemrograman. Tanggung jawab…

2 hours ago

Rekomendasi Tools A/B Testing untuk Meningkatkan Conversion Rate

Secara default, WordPress tidak mendukung A/B testing. Tapi jangan khawatir. Di bawah ini, kami telah…

1 day ago

Ingin Menjadi UX Designer? Coba Pelajari Apa Saja Tugasnya!

UX design merupakan singkatan dari User Experience design atau desain pengalaman pengguna. Istilah ini sering…

3 days ago

Mengenal Pengertian Apa Itu A/B Testing?

A/B testing adalah prosedur pengujian yang membandingkan dua halaman situs web atau lebih secara bersamaan…

4 days ago

Rekomendasi Topik Blog Untuk Pemula Yang Baru Terjun Di Dunia Blogging

Menemukan topik blog yang menarik dan terkini mungkin tidak mudah, terutama bagi pemula yang belum…

5 days ago

Cari Untung Besar Di Internet Dengan Mengikuti Cara Monetisasi Blog Ini

Cara Memonetisasi Blog – Menulis blog pribadi bukan lagi sekedar hobi, kegiatan ini menawarkan peluang…

6 days ago