Firebase, co to takiego? Moja styczność z bazą czasu rzeczywistego

Firebase, co to takiego? Moja styczność z bazą czasu rzeczywistego

Nie często zdarza mi się pisać na temat back-endu. W ostatnim roku byłem przyciśnięty by stworzyć aplikację w Firebase od Google. Jak się okazuje, to całkiem spory kombajn i do dobrze mi się sprawdza. Firebase dostępne jest na kilka różnych platform, między innymi „for Web”.

Baza danych

Firebase Database przechowuje dane w postaci JSON. Każdy z węzłów posiada własny URL do którego możemy się odwołać.

W zakładce „Dane” wyświetlimy strukturę danych, zmienimy wartość czy usuniemy węzeł. Co w tym fajnego? Widok działa w myśl schematu „two way data binding” a więc każda zmiana z poziomu aplikacji będzie natychmiastowo widoczna w panelu i vice versa.

Dashboard pozwala w przejrzysty sposób tworzyć reguły dostępu do poszczególnych poziomów. W hierarchicznym pliku definiujemy reguły dostępu dla na przykład różnych ról użytkownika.

Baza danych tego typu rządzi się nieco innymi prawami niż klasyczne relacyjne bazy danych. Dobrych praktyk i tego jak wyciągnąć z niej maksimum możliwości trzeba się po prostu nauczyć.

Zarządzanie użytkownikami

Panel zarządzania daje podstawowe akcje dla kont użytkowników. W wygodny sposób możemy aktywować metody logowania, dodawać i blokować użytkowników.

System ma również moduł wysyłania wiadomości e-mail w przypadku powitania czy zmiany hasła. Możemy tworzyć szablony tekstowe dla wiadomości ale w praktyce się to nie sprawdza. Szablonów nie można bowiem wzbogacać graficznie. Nie stanowi to może dużego problemu. Przy pomocy HTML i angularFire, o którym mowa dalej, łatwo stworzyć własny szablon i wysyłkę.

Biblioteka angularFire

Tak się składa, że z frameworków łączących front i back-edn najlepiej znam AngularJS. Poszedłem więc tym tropem i znalazłem bibliotekę angularFire. W praktyce wyszło, że ma ona kilka niedociągnięć ale wszystko można dopiąć w całość.

AngularFire zapewnia pełne wsparcie dla Angulara w komunikacją z bazą danych. Udostępnia czytelne metody do autentykacji użytkowników, bindowania danych i tworzenia promise-ów.

Nie zagłębiając się w szczegóły programowania, dostępne mamy cztery typy danych, które bindowane są ze $scope angulara. Są to:

$firebaseObject – zsynchronizowane dane w postaci obiektu,
$firebaseArray – analogiczne dane w postaci tablicy,
$firebaseStorage – dostęp do treści i plików użytkownika a także
$firebaseAuth – obiekt do autentykacji i zarządzania użytkownikiem.

Dostęp przez konsolę

Dla prawdziwych geek-ów, platforma udostępnia także całkiem przyjemne CLI (Command Line Interface). Po zainstalowaniu pakietu i zalogowaniu się kontem z Google, możemy zarządzać wybranym projektem. Przede wszystkim, CLI umożliwia aktualizację plików na serwerze (tzw. deploy).

Dlaczego warto

Firebase, do pewnego pułapu jest kompletnie darmowe. Mamy dostęp do pełnej funkcjonalności dashboardu i usług. Plan Spark oferuje 100 jednoczesnych połączeń do bazy oraz 1GB przestrzeni dla danych. Z pewnością nada się do do przetestowania twojej aplikacji na etapie MVP.

Przy większym ruchu w aplikacji, najlepszą opcją wydaje się być plan Blaze. Płatności naliczane są proporcjonalnie do liczby użytkowników. Za każdy 1GB powierzchni zapłacimy $5.

Oprócz szybkiej bazy danych, Firebase udostępnia również usługę hostingu plików, narzędzia do monitorowania, analizy ruchu i wiele innych.

Jestem ciekaw jaką opinią cieszy się w Polsce. Ktoś? Coś?

Popularne wpisy

Kodowanie

Responsywne menu — 3 sprawdzone rozwiązania

Responsywne menu — 3 sprawdzone rozwiązania

Czytaj to
Mixiny SCSS – czyli jak uprzyjemniam sobie pracę

Mixiny SCSS – czyli jak uprzyjemniam sobie pracę

Czytaj to

Felietony

Błędy początkujących webmasterów, których warto unikać

Błędy początkujących webmasterów, których warto unikać

Czytaj to
Dlaczego frameworki HTML często nie mają sensu?

Dlaczego frameworki HTML często nie mają sensu?

Czytaj to

Inspiracje

Zestaw prostych i ciekawych przycisków na stronę

Zestaw prostych i ciekawych przycisków na stronę

Czytaj to
Najlepsze strony, z których pobierzesz darmowe zdjęcia

Najlepsze strony, z których pobierzesz darmowe zdjęcia

Czytaj to

Newsletter

Maksymalnie raz w miesiącu dostaniesz powiadomienie o nowych wpisach.
Zapisz się do newslettera — ja nie śmiecę.

Ta strona wykorzystuje pliki cookies wyłącznie w celach statystycznych.