![見出し画像](https://assets.st-note.com/production/uploads/images/52685795/rectangle_large_type_2_6d86f241f3119c868bab3f1e8ffbf784.png?width=1200)
Google I/O 2021 Day2 Firebase Keynote Review (1)
画像引用元 : All Images by Google / YouTube
はじめに
前回の Google I/O 2021 Day1 Reviewに引き続きDay2の中で、今回はFirebaseのUpdateポイントをご紹介していきます。Google I/O 2021では各種プロダクト毎にもコンテンツが整理されています。その中で、Firebaseは上段の中で、しかもGoogle Cloudとは分離された形で表示されているため、推しが強いと感じたプロダクトです。
Firebase とは?
GCP(Google Cloud Platform)と呼ばれる一連のクラウドサービス群として提供されるサービスの一つで、アプリケーションの開発と運用を簡単に行うことが出来るサービスです。
Firebaseにはアプリケーション環境に必要なサービスがまとめて実装されています。「データベース」「認証」「ホスティング」「ストレージ」などがあり、しかもそれぞれの管理はFirebase任せることが出来るので、従来のサーバ管理やネットワーク管理といった作業から開発者を解放することができます。
( 今回、字幕が日本語で助かりました... )
GCPの中には他にもアプリケーション開発を行えるサービスはいくつもありますが、昨年からFirebaseは機能を次々とリリースしています。主たる機能から始まり、便利機能や運用時の悩みが解決できるように機能が充実してきました。その流れを受けるように、今回のGoogle I/Oでも待望の新機能がリリースされています。
プロダクト全体としては「アプリケーション開発の加速」「アプリケーションの実行」「顧客体験の最適化」をテーマとなっているようです。
Storage Emulator 追加
アプリケーション開発時にローカル環境でデバッグをするシーンは多いですが、 Firebase Emulator Suite にバックエンドプロダクトをカバーするStorage Emulator が追加されました。昨年のAuth Emulatorに続き追加され、ついにバックエンド製品をコンプリートしたんですね。これでローカル環境にて全部エミュレートできるのか。
え、まじで?オンプレミスなアプリケーション開発でも開発者環境と実行環境の違いで問題はよく発生しますが、Firebaseのようなクラウド環境におけるアプリケーション開発ではこの「環境」の問題は更に複雑化します。クラウドへの通信が問題なのか、クラウド側のデバッグがしづらいなど、苦労が増える点は事実でしょう。
Storage Emulatorを使うには、従来通りFirebase CLIをダウンロードしてエミュレーターを起動すると利用ができます。
Firebase App Distribution (Beta)
こちらはまだBeta版のようですが、Firebase App Distributionとしてアプリケーションのプレリリースや特定のテスターへ向けたアプリケーションの限定配信が可能となります。開発環境を持っている開発者とは異なり、アプリケーションの受け渡しや管理は手間になるので、良さげ。正式リリースが待ち遠しいです。
Android App Bundles
App Distributionの一環としてAndroidアプリ向けに、実際の.aabファイルをGoogle Play Console から利用ができるようになるようです。
App Check (Beta)
App Checkはバックエンド側のプロダクトへ通信が、正しく自分達のアプリケーションから来ているかを確認できる機能。不正通信をブロックしてくれます。
これは「Cloud Storage For Firebase 」、「Realtime Database」「Cloud Functions For Firebase」の3つで利用ができます。この機能は他のサービスを使ってアプリケーションを開発しても、同じように実施しなければならないセキュリティの機能になるのでありがたいです。これが正しく設定できていないと、API不正利用やストレージやDBへの不正アクセスを許してしまい、とても安全なアプリケーションとは言えないものになってしまいます。
使い方としても App Check に登録して、コンソールから保護を有効化するだけ。実にシンプル。
Firebase Web SDKs Update (Beta)
Web SDKのUpdateがありました。写真では記載が無いですが、Betaのようです。アプリケーションテスト時などのロード時間改善のために、データサイズ抑制のためトリミングする。自動なのか手動選択なのか不明ですが、ユーザのダウンロード時間が短くなると、待ち時間による負担が減るので優しい。
Firebase Extensions Update
Firebase ExtensionsとはGoogle以外の企業により提供され、機能をあらかじめパッケージしておき、追加するだけで欲しい機能をすぐに利用できる優れものです。このFirebase Extensionsに新機能が追加されました。
一つずつ見てみましょう。
Run Subscription Payments with Stripe
Run Subscription Payments は Stripeの提供する拡張機能。割引コードも使える課金支払い機能。課金周りは気を遣って開発しないとダメな上、決済プラットフォームとの契約など考えることが多い代表格。それをFirebase Extensions として提供してくれる。筆者は課金機能を開発した事が無いのでピンとこないけど、きっと$15.00/monthってのはお得なんでしょう。
Analyze Toxicity with Perspective API
きたー!!これはGoogleがメディア向けに開発されていた機能のFirebase Extension版だ! 筆者は毒コメに苦労してる訳では無いのですが、技術厨としては TensorflowとMachine Learningの組み合わせで作られたこういったサービスが、簡単に拡張機能として導入できる未来感に喜んでしまう。シームレスな統合ですよ、これは。
Search with Algolia
Search って書くと、何のことか分かりづらくなりましたが、Algolia社が提供する Search機能 のようです。あらかじめDBにインデックスをつけておけば、アプリケーションに検索と検出機能が追加できるみたいです。Searchは自前で作成するケースもありますが、新しいエントリ(商品のように、アプリケーション開発後にも追加されるもの)を検出し、インデックスの更新までしてくれるとのこと。お、カバー範囲が広い。
Manage marketing with Mailchimp
こちらはMailchimp社が提供している、同名サービスへ連携する拡張機能です。別途Mailchimpのアカウントが必要となりそうですが、Firebaseで作成したアプリケーションの顧客データを連携できるようです。
Send Messages with MessageBird
こっちはMessageBird社が提供する、テキスティング(テキスト会話)によるメッセージ送信機能ですね。Message BirdはGoogleをはじめとして、UberやFacebook, WhatsAppなど有名サービスのバックエンドサービス。
今はWhatsApp,Telegram,SMS,Email,Instagram,WeChatに対応のようだ
ここまで
後編へ続く
Firebase愛が強いためか、記事が伸びました。以下、後編へ続きます。