Slide 1

Slide 1 text

chatbox.inc 後藤 知宏 Firebase で非同期に開発する

Slide 2

Slide 2 text

chatbox.inc 後 藤 知 宏 株式会社chatbox 代表取締役 関西フロントエンドUG代表 Twitter : @_mikakane エンジニア / 技術顧問

Slide 3

Slide 3 text

chatbox.inc Firebase Google の提供する BaaS Service めっちゃ便利

Slide 4

Slide 4 text

chatbox.inc Firebase Authentication Firebase を利用した 認証機構 Web GUI 操作で 簡単な認証機構を用意することが可能 Mail 認証のほか、Google / Github などのサービス認証、 匿名認証にも対応で Oauth2 の 設定も簡単 認証のためのフローは JS を数行記述するだけ ポップアップ認証で、画面遷移も不要の Promise ベース認証

Slide 5

Slide 5 text

chatbox.inc Firebase Database Realtime DatabaseとCloud Firestore どちらも NoSQL ベースで柔軟な利用が可能 Realtime Database は 大きなJSON ツリーに データを追加していく形式 Cloud Firestore は コレクションと呼ばれる単位で、 JSON ライクにデータを管理する形式

Slide 6

Slide 6 text

chatbox.inc vuexfire Vue.js の ストア Vuex と Firebase Database を 同期させるツール vuexfire Realtime Database 上の任意のパスと、 任意の state を紐付ける事ができる。 もちろん、 node の firebase モジュールを利用した、 任意の Read / Write 操作も可能

Slide 7

Slide 7 text

chatbox.inc Firebase で バックエンド構築 コードを記述すること無く、 柔軟に利用可能なバックエンド基盤を構築できる フロントエンジニアに力を!

Slide 8

Slide 8 text

chatbox.inc Web アプリケーション開発 frontend backend swagger Swagger を利用した REST API Schema の共有 フロントとバックエンド開発は 二人三脚

Slide 9

Slide 9 text

chatbox.inc フロント開発の課題 バックエンドと二人三脚 API 仕様書をともにメンテしていく必要性 些細なデータでも、永続化のために バックエンドに 都度 API を作成・管理していかなければならない API の開発スケジュールにフロントが引きずられる 統合テスト、API のバグなど

Slide 10

Slide 10 text

chatbox.inc Firebase を使った開発 frontend firebase Web GUI Firebase の管理画面を利用して Backend 基板を構築 フロントエンドの実装担当者が、 アプリケーションの全機能を実装できる。

Slide 11

Slide 11 text

chatbox.inc Really? システム利用データの集計、出力、管理機能など…

Slide 12

Slide 12 text

chatbox.inc Firebase Admin 管理者権限で Realtime Database の 読み書きを実行したり、認 証のための ID トークンを確認したりできる。 Node.js / Java / Python / Go / C# で提供されている他、 REST API の実装で非公式に PHP や Ruby などの実装も 管理者権限で Database 全体を操作したり、 ユーザの認証を行ったりするのに便利

Slide 13

Slide 13 text

chatbox.inc Firebase Admin frontend firebase backend REST API as Event auth with uid touch whole database uid as token

Slide 14

Slide 14 text

chatbox.inc Firebase Anywhere フロントで完結させたい 業務ロジック関心外のデータを すべて Firebase で巻き取る。 DB 構成を「本当に必要な業務データ」のみに 小規模向けのイメージが強いが、 大規模向けの REST API + SPA の開発でも、 REST API 開発規模を 削減するために…など利用場面は多い 後々、Firebase 上のデータを 管理部門で活用したくなったら Firebase Admin で簡単に巻き取れる。

Slide 15

Slide 15 text

chatbox.inc Firebase で 変わる開発フロー バックエンドは より シンプルに 開発はより独立して、分割された責務を全うする形に

Slide 16

Slide 16 text

chatbox.inc Firebase を使った開発依頼 お待ちしております。

Slide 17

Slide 17 text

chatbox.inc FJUG Osaka

Slide 18

Slide 18 text

chatbox.inc Lec Cafe

Slide 19

Slide 19 text

chatbox.inc Lec Cafe

Slide 20

Slide 20 text

chatbox.inc Thanks!