Tìm hiểu Firebase - Phần 1

Xin chào các bạn, hôm nay mình xin giới thiệu với các bạn 1 công nghệ rất thú vị tên là Firebase.

Tổng Quan

Firebase là gì

Firebase là một nền tảng phát triển ứng dụng web và mobile, cung cấp cho các nhà phát triển một bộ công cụ và dịch vụ giúp họ phát triển các ứng chất lượng cao, tăng trưởng lượng người dùng và kiếm được nhiều lợi nhuận hơn.

Lịch sử phát triển

Năm 2011, startup tiền thân của Firebase được thành lập, được gọi là Envolve. Nó cung cấp cho các nhà phát triển API cho phép tích hợp tính năng nhắn tin trực tuyến vào trang web của họ.

Điều thú vị là các nhà phát triển sử dụng Envolve không chỉ để làm nhắn tin trực tuyến. Họ sử dụng Envolve để đồng bộ hóa dữ liệu ứng dụng, chẳng hạn như một trạng thái game giữa các user trong thời gian thực.

Điều đó đã dẫn đến các nhà sáng lập của Envolve tách riêng hệ thống chat và kiến trúc realtime. Năm 2012, Firebase được tạo như một công ty cung cấp Backend as a Service với tính năng realtime.

Sau khi được Google mua lại năm 2014, Firebase nhanh chóng phát triển thành một nền tảng đa chức năng như ngày nay

Các dịch vụ Firebase

Firebase chia các dịch vụ của nó thành 3 nhóm:

Các tính năng chính

Realtime database

Firebase Realtime Database là một cơ sở dữ liệu NoSQL trên đám mây cho phép bạn lưu trữ và đồng bộ hóa dữ liệu giữa các user trong thời gian thực.

Realtime Database cơ bản chỉ là một đối tượng JSON lớn mà các nhà phát triển có thể quản lý thời gian thực.

Chỉ với một API duy nhất, Realtime Database cung cấp cho ứng dụng của bạn cả giá trị hiện tại của dữ liệu và bất kì cập nhật mới nào.

Đồng bộ hóa thời gian thực giúp người dùng truy cập dữ liệu của họ dễ dàng từ bất kì thiết bị nào cũng như tương tác với các người dùng khác.

Một lợi ích tuyệt vời khác của Realtime Database là nó cung cấp SDKs cho cả web và mobile, cho phép bạn xây dựng ứng dụng mà không cần server.

Khi người dùng ngoại tuyến, Realtime Databse SDKs sử dụng local cache trên trình duyệt để lưu trữ thay đổi. Khi thiết bị online các dữ liệu đó sẽ được tự động đồng bộ hóa.

Realtime Database cũng tích hợp với Firebase Authentication để cung cấp một tiến trình xác thực đơn giản và trực quan.

Authentication

Firebase Authentication cung cấp dịch vụ backend, SDKs sẵn sàng sử dụng, và các thư viện UI được làm sẵn để giúp ứng dụng của bạn xác thực người dùng.

Thông thường, bạn phải mất cả tháng để xây dựng hệ thống xác thực và thường xuyên phải bảo trì nó. Nhưng nếu bạn sử dụng Firebase, bạn chỉ dưới 10 dòng code để xử lý mọi thứ, bao gồm cả những thao tác phức tạp như sát nhập tài khoản.

Bạn có thể xác thực người dùng qua các phương thức như: Email, Phone number, Facebook, Google, Twitter, ...

Sử dụng Firebase Authentication giúp dễ dang hơn cho việc xây dựng hệ thống xác thực an toàn, trong khi cũng cải thiện trải nghiệm cho người dùng.

Firebase Authentication được phát triển bởi những người đã tạo ra Google Signin, Smart Lock và Chrome Password Manager.

Firebase Cloud Messaging (FCM)

Firebase Cloud Messaging cung cấp một kết nối hiệu quả và đáng tin cậy giữa server và thiết bị của bạn, cho phép bạn gửi và nhận tin nhắn hoặc thông báo trên iOS, Android và Web mà không mất thêm chi phí.

Bạn có thể gửi tin nhắn thông báo (giới hạn 2KB) hoặc tin nhắn dữ liệu (giới hạn 4KB).

Sử dụng FCM, bạn có thể dễ dàng xác định đối tượng mục tiêu với các phân khúc được định nghĩa trước hoặc do bạn tự định nghĩa, sử dụng nhân khẩu học và hành vi. Bạn có thể gửi tin nhắn tới một nhóm các thiết bị được đăng kí theo các chủ đề xác định, hoặc bạn có thể nhận được chi tiết như một thiết bị duy nhất.

FCM có thể gửi tin nhắn ngay lập tức hoặc trong tương lai theo múi giờ của người dùng. Bạn có thể gửi dữ liệu tùy chỉnh như cài đặt độ ưu tiên, âm thanh, ngày hết hạn, và cũng theo dõi các sự kiện tùy chỉnh.

Điều tuyệt vời nhất là hầu như không cần thêm bất kì code nào! FCM được tích hợp hoàn toàn với Firebase Analytics, cho phép bạn khả năng theo dõi chi tiết các hoạt động.

Bạn cũng có thể thử A/B testing để kiểm thử các phiên bản của tin nhắn thông báo và chọn cái phù hợp nhất với mục đích của bạn

Kết

Sang phần sau mình sẽ giới thiệu thêm một số tính năng của Firebase cùng cơ sở dữ liệu NoSQL mới của nó - Cloud Firestore. Các bạn cùng đón xem nhé!!!

Tham khảo

Introduction to Firebase🔥