Googleが提供している「Firebase」というモバイルプラットフォームをご存知でしょうか？バックエンドで行う機能を提供しているサービスで、いわゆるMBaas / BaaSと呼ばれているものです。



本記事では、アプリ開発をサポートしてくれる「Firebase」について分かりやすく解説します。まだ「Firebase」を使ったことのない初心者向けの内容となっていますので、身構えずに読んでいただければ幸いです。

Firebaseとは？

「Firebase」は、2011年にシリコンバレー発のスタートアップ・Firebase社がサービスを開始したMobile Backend as a Service（MBaas）です。その後、2014年にGoogleが買収し、Googleの持つクラウドプラットフォームに統合されました。



MBaasはBaaS（Backend as a Service）とも呼ばれており、Webアプリケーションやモバイルアプリケーションのバックエンドで行う機能を提供するクラウドサービスです。「Firebase」はアプリ開発者向けのサービスで、バックエンドの処理を代行することで開発にかかる時間・手間の省略が可能で、コスト節約にもつながります。

Firebaseの特長

「Firebase」の最大の特長と言えるのが、リアルタイムでデータ同期ができる点です。「Firebase Realtime Database」という機能名で提供されていて、データはJSONフォーマットで保存されます。



「Firebase Realtime Database」はクラウドホスト型 NoSQLデータベースで、ユーザー同士でデータをリアルタイムで保存・同期ができる優れた機能です。編集したデータはクラウドに保存され、数ミリ秒で各端末に同期されるため、ユーザー同士はリアルタイムでの共同作業が可能になります。



アプリのクロスプラットフォーム開発環境が注目されていますが、「Firebase」はSwift、Objective-C、Java、JavaScript、C++、Unityなど複数の言語での開発が可能です。また、Facebook社が開発したJavaScriptのフレームワーク「React Native」にも対応しています。

Firebaseを使うメリット

バックエンド処理を代行してくれる「Firebase」を使えば面倒なサーバの管理や保守が不要になるため、クライアントサイドの開発に集中できるのがメリットです。インフラ管理の時間と手間を省略することにより、エンジニアの負担が大きく軽減されるでしょう。



コスト面で言えば、サーバ管理・保守が不要であることによって節約効果が期待できます。「Firebase」の料金体系については後述しますが、無料プランがあり、有料プランも月額25ドルからとリーズナブルな料金になっているので、個人開発者でも利用しやすいです。



「Firebase」は多機能であるのも大きなメリットで、アプリ開発に必要な機能が一通り揃っています。リアルタイムデータベースをはじめ、アナリティクス、クラウドメッセージング、クラッシュレポートといった複数の機能が提供されていて、自由に組み合わせることで柔軟なアプリ開発ができることでしょう。

Firebaseを使ってできること（機能）

リアルタイムデータベース（Firebase Realtime Database）

「Firebase Realtime Database」に関しては前項で詳しく解説しましたが、この機能にはリアルタイムでのデータ保存・同期以外にもうひとつ大きな特長があります。それは、iOSとAndroidのSDKではオフラインに対応している点です。



「Firebase Realtime Database SDK」はデータをオフラインのデータベースに書き込むため、ローカルキャッシュでのデータ表示を可能としています。端末がオンラインになると自動的にローカルデータと同期してくれるので、オフライン時の利用も安心です。



セキュリティに関して言えば、「Firebase Realtime Database」ではデータベース構築の仕方を指定し、ユーザーアクセス権の設定をすることでデータ保護を行います。各ユーザーがどのデータにアクセスできるのかを指定したり、メッセージの文字数を指定したりする場合、数行のコードで設定できるので非常に使いやすいです。

アプリのアクセス解析（Firebase向けGoogleアナリティクス）

「Firebase」には、アクセス解析ツールの「Googleアナリティクス」の機能が組み込まれています。こちらはアプリ用のアクセス解析機能で、アプリの使用状況やユーザーエンゲージメントなどの解析が可能です。



「Firebase Cloud Messaging」や「Firebase Crash Reporting」といった他の機能や、「BigQuery」や「Googleタグマネージャ」といったGoogleが提供する他のサービスとの統合もできます。



アプリに「Firebase SDK」と追加すると自動でデータ収集が開始されるので、導入にあたって難しい設定はありません。アクセス解析をすることでアプリの改善に役立てます。

クラウドメッセージング（Firebase Cloud Messaging）

「Firebase Cloud Messaging」は、クロスプラットフォームで通知を無料送信できる機能です。iOSやAndroidといった異なるデバイス間へのメッセージを無料で送受信ができます。



セグメントを使用してメッセージを送るターゲットを設定することも可能です。送信したメッセージはダッシュボードでモニタリングできるので、アプリマーケティングの分析に活躍します。

認証（Firebase Authentication）

「Authentication」は「認証」という意味で、「Firebase Authentication」はユーザーの初期登録や認証を簡単に実装できる機能です。



ログイン方法は、「FirebaseUI」に備わっている「ドロップイン認証ソリューション」を利用する、または「Firebase Authentication SDK」を使って手動でアプリに統合するかを選択できます。



後者の方法の場合、メールとパスワードに基づく認証、フェデレーションIDプロバイダとの統合（SNSでの認証）、電話番号認証、カスタム認証システムとの統合、匿名認証といった複数の認証方法が利用可能です。SNS認証では、Google、Facebook、Twitter、GitHubのアカウントが利用できます。

クラッシュ分析（Firebase Crashlytics）

「Firebase Crashlytics」は、AndroidとiOS用のクラッシュ分析機能です。リアルタイムでアプリのクラッシュ分析を行ってくれる機能で、クラッシュがユーザーに与える影響の測定やクラッシュの原因となっているコードを特定してくれます。



アプリにはエラーがつきものですので、ユーザビリティを低下させないためには、いち早くクラッシュの原因を特定して改善しなければなりません。この機能を使えば「Firebase」がクラッシュ状況をリアルタイムで教えてくれるので助かります。

Firebaseの料金体系

「Firebase」は基本無料で利用でき、拡張の料金はデータ量に応じて発生します。プランは無料の「Sparkプラン」、月額25ドルの「Flameプラン」、従量制の「Blazeプラン」の3種類です。



無料プランでは同時接続数や容量に制限があるため、ユーザー数の多いアプリでは有料プランが必要となるでしょう。料金紹介ページに「Blazeプラン」の料金計算ツールがあるので、そちらを使えばだいたいの料金が分かります。



無料からはじめられるので、本格的に利用するかはさておき、アプリ開発をされている方は試しに使ってみてください。

Firebaseは多彩な機能でアプリ開発を楽にしてくれるBaaS

ご覧いただいたように、Firebaseにはアプリ開発を助けてくれる多彩な機能が備わっています。アプリ開発において必要となるバックエンドの機能をほぼ備えているので、特に個人や少人数で開発されている方にとっては大きな助けになることでしょう。



たとえば、「Firebase」の認証機能を使えばログイン機能を簡単に実装できるので、アプリ開発が楽になります。アプリの改善にはアクセス解析も必要です。



解説した機能はほんの一部で、クラウドストレージやアプリ内広告など便利な機能はまだまだたくさんあります。基本料金は無料ですので、試して損はありません。

おわりに

「Firebase」の魅力を少しでもお伝えできたでしょうか？「Firebase」にバックエンドの処理を任せればアプリ開発は随分捗るかと思います。



「Firebase」のようなBaaSは、アプリ開発にかかる手間とコストを軽減するためのサービスです。開発コストを抑えたいアプリ開発者は導入を検討してみください。

ITエンジニア・Webクリエイターの転職ならレバテックキャリア

レバテックキャリアはIT・Web業界のエンジニア・クリエイターを専門とする転職エージェントです。最新の技術情報や業界動向に精通したキャリアアドバイザーが、年収・技術志向・今後のキャリアパス・ワークライフバランスなど、一人ひとりの希望に寄り添いながら転職活動をサポートします。一般公開されていない大手企業や優良企業の非公開求人も多数保有していますので、まずは一度カウンセリングにお越しください。



転職支援サービスに申し込む



また、「初めての転職で、何から始めていいかわからない」「まだ転職するかどうか迷っている」など、転職活動に何らかの不安を抱えている方には、無料の個別相談会も実施しています。キャリアアドバイザーが一対一で、これからのあなたのキャリアを一緒に考えます。お気軽にご相談ください。



「個別相談会」に申し込む