Firebase Nedir?, Nasıl Kullanılır ve Özellikleri Nelerdir?

Merhaba arkadaşlar.

Bu yazımda, özellikle mobil uygulama geliştiren arkadaşların çok işine yarayacak olan Firebase isimli platformdan bahsedeceğim.

Kısaca açıklamak gerekirse;
Firebase : JSON verilerimizi uzak bir sunucuda gerçek zamanlı olarak depolayabildiğimiz, bulut (Cloud) tabanlı bir platformdur.

Peki bu gerçek zamanlı olarak veri depolama” cümlesiyle anlatmak istediğimiz şey ne olabilir?

Hatırlarsanız önceki makalelerimde MongoLab platformunu kullanarak JSON verilerimizi uzak bir veri tabanında nasıl saklayabildiğimizden bahsetmiştim. Bu platform’da veri depolarken Web Servisleri (RESTful API) ile işlemler yapıyor; depoladığımız verilerde herhangi bir değişiklik yapabilmek ve güncellenmiş bir veriyi kullanabilmek için sunucuya çeşitli isteklerde bulunuyorduk.
Diyelim ki yazdığımız bir uygulama aynı anda 2 kullanıcı tarafından kullanılmakta olsun. MongoLab gibi uzak bir sunucuda depolanmış olan veriler üzerinde kullanıcılardan biri herhangi bir değişik yaptığı anda diğer kullanıcının bundan haberdar olması gibi bir durum söz konusu olmayacaktır.

Fakat Firebase; sunucu tarafında (BackEnd) bize sağlamış olduğu servis desteği sayesinde, veri tabanında gerçekleşen her değişiklikten anında haberdar olabilmemizi mümkün kılmaktadır.

Ayrıca Firebase, bizi Node.JS, Socket Programlama v.b. aşamalardan kurtararak proje geliştirme sürecinde zaman kazanmamızı sağlar.

BackEnd ve RESTful API hakkında bilgi sahibi olmasak bile, Firebase platformunu kullanarak güçlü ve dinamik uygulamalar geliştrebiliriz.

Peki Firebase‘in bize sağlamış olduğu bu servisler ile neler yapabiliriz?

  • Bir sohbet uygulaması yapabiliriz.
  • Kullanıcıların paylaşım yapabildiği ve diğer kullanıcıların bu paylaşımları anlık olarak görebildiği sosyal bir platform kurabiliriz.
  • Kullanıcıların birbirileriyle yarıştığı online bir yarışma uygulaması geliştirebiliriz.
  • Birden çok kullanıcının hem mobil cihazlardan hemde bilgisayarlardan erişebildiği bir stok takip sistemi kurabiliriz.

Hayal gücümüze bağlı olarak bu listeyi daha da çoğaltabiliriz. Kısacası 1 veya 1’den fazla kullanıcının etkileşime geçebileceği türden her türlü uygulamayı Firebase sayesinde kolaylıkla geliştirebiliriz.

Platform’a üye olmak ise oldukça basit..

www.firebase.com adresine girdikten sonra “SIGN UP WITH GOOGLE” butonuna tıklayarak Google Hesabınız ile kolaylıkla üye olabilirsiniz.

Üyelik işlemlerini tamamladıktan sonra kullanıcı sayfamıza girip;

 

Ekran Görüntüsü - 2016-04-15 12-41-20

 

“CREATE NEW APP” butonuna tıklayarak yeni bir uygulama oluşturabilir, “Manage App” butonuna basarak ta oluşturduğumuz uygulamayı yönetebiliriz.

Uygulama ekranından biraz bahsedecek olursak ;

firebaseEkran2

 

Data sekmesinin altında depoladığımız verileri görebilirsiniz. Manuel olarak veri eklemek için ” + ” simgesine, silmek için de ” x “simgesine tıklayarak veri ekleyip-silebilirsiniz. “Import” ve “Export” butonlarını kullanarak veri tabanınıza kendi JSON Veri Tabanınızı ekleyebilir, yada Firebase’daki JSON Veri Tabanınızı dışa aktarabilirsiniz. Ayrıca Data sekmesi altındaki ekrandan; veri tabanınızdaki değişiklikleri de görebilirsiniz.

 

Verilerin Güvenliği ve Erişim Yetkileri (Security & Rules) :

firebaseEkran3

 

Firebase, verilerin güvenliği konusunda da kullanıcılara birçok kolaylık sağlamaktadır. Platform içerisinde tanımlı olan bir dil (Firebase Rules) sayesinde veri tabanına erişimi sınırlandırabilir, kullanıcılara belirli yetkiler vererek; her yetkinin belirli verilere erişimini sağlayabiliriz.

Örnek verecek olursak;

“Firebase Rules” kısmına bu kodları yazıp “Save Rules” butonuna tıklayıp değişikleri kaydederek veri tabanındaki “Ayarlar” kısmındaki verileri  tüm kullanıcıların okuyabileceğini, fakat sadece admin yetkisindeki kullanıcıların veri kaydedebileceğini belirlemiş oluruz.

Güvenlik kurallarıyla (Security & Rules) detaylı bilgi için: https://www.firebase.com/docs/security/quickstart.html

 

Simulator ekranında ise Firebase; Security & Rules ekranında belirlemiş olduğumuz güvenlik kurallarının çalışıp çalışmadığını test edebilme imkanını bize sunmaktadır.

firebase4
Bu ekranla birlikte; Admin olarak, yetkilendirilmiş kullanıcı (Custom Auth) olarak ve yetkisiz bir kullanıcı (Unauthenticated) olarak veri tabanına bağlanarak Okuma (Read) ve yazma (Write) işlemlerinin çalışıp çalışmadığını kontrol edebiliriz.

 

Analytics ekranında ise veri tabanına yapılan veri transferleri ile ilgili istatistiksel bilgiler mevcuttur. (Veri tabanında ne kadar veri olduğunu, ne kadar transfer yapıldığını v.b. bilgileri görebilirsiniz.)

 

Login & Auth ekranından veri tabanına erişecek olan yetkili kullanıcılar belirlenir.
Veri tabanında;

Kullanıcılara, belirli e-posta adresi ve şifreler ile yetkiler verebildiğimiz gibi,
Sosyal medya hesaplarını kullanarak ta yetkili olarak veri tabanına erişebilirler. Ayrıca belirlediğimiz giriş anahtarlarını (Auth Token) kullanarak veri tabanlarına erişim yapabilmeleri mümkündür.

Firebase Platformunu, en genel haliyle bu şekilde açıklayabilirim.
Login & Auth ve geri kalan kısımları bundan sonra yapacağımız örneklerde kullanacağım için,bu konularla ilgili ayrıntıya daha sonraki makalelerde girmeyi düşünüyorum.

Yapacağım örneklerde sizlerinde ilgisini çekebileceğini düşündüğüm için; basit bir sohbet uygulamasını Java, Android ve Swift Programlama dillerini kullanarak nasıl geliştirebileceğimizi anlatacağım.

 

Şimdilik benden bu kadar.. 🙂



You may also like...

12 Responses

  1. Ali Yetkin dedi ki:

    Elinize sağlık gayet aydınlatıcı olmuş.

  2. Adnan dedi ki:

    Sade ve güzel bir yazı olmuş, elinize sağlık

  3. Anonim dedi ki:

    Elinize sağlık. Güzel ve açıklayıcı bir yazı olmuş

  4. serhat dedi ki:

    Firebase 3 platformu için basit veri yazma örneği var mı

  5. Anonim dedi ki:

    Teşekkurler

  6. a dedi ki:

    gayet iyi 😀 Teşekkürler

Umut ONUR için bir cevap yazın Cevabı iptal et

This site uses Akismet to reduce spam. Learn how your comment data is processed.