Apa itu Firebase? Manfaatkan Alat dan Infrakstuktur dari Google untuk Developer (Kelebihan & Kekurangan)

Beberapa tahun terakhir, Firebase mulai dikenal di kalangan developer termasuk di Indonesia. Saya di sini akan melakukan sharing apa saja yang dapat kita manfaatkan dari Firebase, serta review kelebihan dan kekurangan dari Firebase sendiri.


#Sejarah

Firebase pertama kali didirikan pada tahun 2011 oleh Andrew Lee dan James Tamplin. Produk yang pertama kali dikembangkan adalah Realtime Database, di mana developer dapat menyimpan dan melakukan sinkronasi data ke banyak user. Kemudian berkembang menjadi layanan penyedia pengembangan aplikasi. Pada Oktober 2014, perusahaan tersebut diakusisi oleh Google. Berbagai fitur terus dikembangkan hingga diperkenalkan pada Mei 2016 di Google I/O.


#Layanan Firebase

Layanan Firebase tidak seperti dulu yang memberikan Trial Plan, sekarang kita dapat memanfaatkan Firebase secara Gratis! Tentunya dengan batasan tertentu. Firebase tersedia dalam tiga opsi, yaitu: SPARK (Free), FLAME ($25 per bulan), dan BLAZE (bayar sesuai pemakaian). Anda dapat membandingkan ketiga opsi tersebut melalui https://firebase.google.com/pricing/. Namun, saya di sini akan membahas tentang layanan yang diberikan oleh Firebase.

fitur firebase

1. Analytics

Supported:
iosandroid

Analytics merupakan inti dari Firebase sendiri yang diberikan secara gratis dan penuh! Kita dapat mengamati tingkah laku pengguna dalam penggunaan aplikasi oleh user dan menilai atribusi dalam satu Dasboard. Simak video berikut untuk lebih jelasnya:



2. Develop

Pada dasarnya, develop digunakan ketika kita sedang mengembangkan sebuah produk.

Layanan Develop
Supported Keterangan
Cloud Messaging iosandroidweb Dulu dikenal sebagai Google Cloud Messaging (GSM), Firebase Cloud Messaging (FCM) dapat mengirim dan menerima pesan lintas platform seperti Android, iOS dan web.
Authentication iosandroidweb Firebase Auth merupakan layanan sistem otentikasi yang menerapkan client-side code, sehingga user dapat mendaftar/login ke aplikasi. Firebase Auth mendukung email & password, Facebook, Twitter, GitHub, dan Google Sign-In.
Realtime Database (Sekarang ada Firestore, fungsi hampir sama)
iosandroidweb Layanan ini menyediakan API yang memungkinkan aplikasi melakukan sinkronasi lintas client serta disimpan di Firebase’s Cloud.

Realtime Database menyediakan library client yang dapat berintegrasi dengan Android, iOS, JavaScript, Java, Objective-C, swift dan Node.js. Pengembang yang menggunakan Realtime Database dapat mengamankan data mereka dengan memakai aturan keamanan pada sisi server.

Realtime Database menggunakan NoSQL database. Di mana data kita disimpan dalam bentuk node.

Storage iosandroidweb Storage dapat menyimpan dan menerima konten dari user seperti gambar, audio, video secara langsung dari Firebase Client SDK.
Hosting web Hosting di Firebase berisi file static seperti CSS, HTML, JavaScript dan file lain sepanjang tidak berubah secara dinamis (seperti PHP). Layanan tersebut mengirim file lewat Content Delivery Network (CDN) melalui HTTPS dan SSL.
Test Lab android Kita dapat menguji aplikasi di berbagai situasi dan kondisi. Test Lab akan menghasilkan laporan secara detail serta screenshots untuk membantu mengidentifikasi bug dari aplikasi kita. Jika anda pernah memakai Amazon Console maka anda tak akan asing dengan Test Lab Firebase.
Crash Reporting iosandroid Menerima informasi permasalahan setelah aplikasi kita di publish

 

3. Grow

Layanan Grow digunakan ketika produk kita sudah jadi dan telah dipublikasikan.

Layanan Grow Supported Keterangan
Notifications iosandroid Layanan ini bersifat Gratis. Menungkinkan user tertentu menerima notifikasi (untuk mobile app).
Remote Config iosandroid Merupakan Layanan Cloud yang mengizinkan pengembang mengubah tingkah laku dan tampilan tanpa perlu user melakukan update. Sehingga ketika sedang ada event tertentu semisal Tahun Baru, kita dapat mengatur konfigurasi aplikasi dari jarak jauh.
App Indexing iosandroid Semula dikenal dengan Google App Indexing, memberikan trafik pencarian dari Google Search.
Dynamic Links iosandroid Merupakan Smart URL yang secara dinamis merubah tingkah lalu untuk memberikan pengalaman saat berbeda platform.
Invites iosandroid Merupakan layanan lintas-platform untuk mengirim email personal dan SMS invitation, on-boarding, serta mengukur dampak dari invitation tersebut.
AdWords iosandroid Adwords merupakan layanan iklan online oleh Google yang terintegrasi dengan Firebase, memungkinkan pengembang untuk menargetkan user melalui Firebase.

 



4. AdMob

Supported:
iosandroid

Barangkali hal ini yang paling dinantikan oleh para pengembang. Monetize! Mengais uang dengan menampilkan iklan di produk kita.

 

#Kelebihan dan Kekurangan Firebase

Setelah kita tahu apa saja layanan yang diberikan oleh Firebase. Saya akan memberikan poin-poin kelebihan dan kekurangan Firebase:

Kelebihan

  1. Tersedia versi Free, sehingga para developer dapat mencoba layanan Firebase tanpa batasan waktu.
  2. Cepat dan responsif
  3. Tanpa SQL, Firebase menggunakan JSON
  4. SDK tersedia untuk Android, iOS, JavaScript, Java, Objective-C, swift dan Node.js
  5. User friendly
  6. Event-oriented
  7. Build-in graphic editor
  8. Powerful API untuk menyimpan dan sinkronasi
  9. API relatif mudah dimengerti
  10. Realtime backend
  11. Memudahkan bagi front-end developer yang kurang mengerti back-end
  12. Dokumentasi & Costumer Support

Kekurangan

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




Kesimpulan inti yang dapat diambil adalah Firebase dapat digunakan untuk pengembangan produk pada skala apapun, termasuk memanfaatkan berbagai Layanan Firebase. Namun, akan menjadi tantangan ketika mengembangkan produk pada skala besar. Setiap hal memiliki kelebihan dan kekurangan masing-masing. Tak ada salahnya mempelajari hal baru.

Sekitan tulisan saya untuk pengenalan Firebase.

Selanjutnya, Tutorial Membuat Aplikasi Android dengan Firebase (cooming soon).

Terima kasih.

Mungkin Anda juga menyukai

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *