Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
LIFFアプリ×スプレッドシートのススメ(2020/10/21 LT祭り)
Search
macochin
October 22, 2020
Programming
0
750
LIFFアプリ×スプレッドシートのススメ(2020/10/21 LT祭り)
macochin
October 22, 2020
Tweet
Share
Other Decks in Programming
See All in Programming
NPOでのDevinの活用
codeforeveryone
0
480
ペアプロ × 生成AI 現場での実践と課題について / generative-ai-in-pair-programming
codmoninc
0
150
ふつうの技術スタックでアート作品を作ってみる
akira888
0
220
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
460
High-Level Programming Languages in AI Era -Human Thought and Mind-
hayat01sh1da
PRO
0
640
Code as Context 〜 1にコードで 2にリンタ 34がなくて 5にルール? 〜
yodakeisuke
0
120
設計やレビューに悩んでいるPHPerに贈る、クリーンなオブジェクト設計の指針たち
panda_program
6
1.8k
AWS CDKの推しポイント 〜CloudFormationと比較してみた〜
akihisaikeda
3
320
PipeCDのプラグイン化で目指すところ
warashi
1
230
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
680
Goで作る、開発・CI環境
sin392
0
180
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
340
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
Designing Experiences People Love
moore
142
24k
Navigating Team Friction
lara
187
15k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
For a Future-Friendly Web
brad_frost
179
9.8k
We Have a Design System, Now What?
morganepeng
53
7.7k
Code Review Best Practice
trishagee
69
18k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Transcript
LIFFアプリ × スプレッドシート のススメ
❏ これまでのスマホアプリの作り方としては、以下の通り ❏ ネイティブアプリ ❏ Webアプリ(PWA等) ❏ ハイブリットアプリ・クロスプラットフォームアプリ(PhoneGap等) ❏
LIFFの登場により、LIFFアプリ(LINEミニアプリ)というスマホアプリの新た な選択肢が増えました ❏ LIFFアプリ(LINEミニアプリ)が、旧来のスマホアプリの代替えになりうると いうことで、そのサービスを構築する上では”DB”のことも考える必要が あります スマホアプリ・LIFFアプリ(LINEミニアプリ)について
〇〇サービス DBって”煩わしく”感じるときってありません??? ユーザ SQL 開発者 グラフ化などしてデータ分析 (デバッグ時などに) ちょっとデータを確認したいだけなのにSQL を書かなければいけない、、、
データ分析する際などは、一度Excelに落と してグラフ化することが多々あり この”ワンアクション”がもどかしい。。。
〇〇サービス ユーザ 開発者 グラフ化などしてデータ分析 じゃあ、初めから Excel形式の”スプレッドシート”に書きませんか?
例)家計簿アプリ 家計簿botアプリ (Node.js) クレジット利用明細 クレジット利用明細 (CSV)をPCで貼り付け 買ったら、
その場で登録 スプレッドシートのグラフ機能で 可視化・データ分析 金額、日にち、買ったもの など沢山登録するので、 LIFFで一括登録
スプレッドシートを使う、もう一つの”メリット” スプレッドシートのサービスへの登録フロー 家計簿botアプリ(Node.js) サービスアカウント
[email protected]
予め アカウントを
発行 ①作成 ②シート登録 ③OAuth認証で、 サービスアカウントに対する 編集権限を付与(共有設定) 家計簿botアプリ(Node.js) サービスアカウント
[email protected]
支出登録 スプレッドシートへ 直接書き込み PCから直接書き込み この仕組みなら、 サービス内で”ユーザのデータ”を保持しなくてもよく、 データ保持の責任リスクを軽減できる
まとめ① ❖ 大規模なサービスではDBを使うのは当然 ❖ 小規模なサービスでは、DBの代替えとして”スプレッドシート”も選択肢 の一つとなりうる ➢ 直接データを見れるので、開発時のデバッグが楽 ➢
スプレッドシートの機能で可視化できるので、データ分析もしやすい ➢ サービス内でユーザデータを保持しないので、データ保持の責任リスクを軽減で きる ❖ LIFFアプリ(LINEミニアプリ)はスマホアプリの代替えとなるため、小規模 サービスになることが多い ➢ LIFFアプリ(LINEミニアプリ)のDBとして、”スプレッドシート”でも十分実用可能(今 回のようにユーザ単位で小規模データを管理する場合に有効)
まとめ② ❖ ユーザのスプレッドシートと連携してインターフェースだけを提供する、 今回の仕組みに類似したサービス ➢ スプレッドシートからPWAアプリを開発できるサービス「Glide」 ▪ https://www.glideapps.com/ ▪
画面レイアウトはWebからGUIで簡単設定 ▪ スプレッドシートから取得したデータを基にスマホ画面を作成し、サービス提供 ▪ (※今日初めて、Googleの「AppSheet」を知ったのですが、ざっと見た感じ、同じ ようなことが出来そうな気がします。) ❖ ユーザのスプレッドシートと連携し、LIFFアプリ(LINEミニアプリ)で”イン ターフェースだけ”を提供する”サービス”の形が、今後流行るか も???
※LTで話しきれなかった(忘れてた)ことに関する補足 ❏ ユーザのSenderIDとスプレッドシートの紐づけ情報について ❏ 紐づけ情報はサービス内で管理しています。(なので、データ保持の責任リスク を”軽減”する、という言い回しにしていました) ❏ 紐づけ情報は、サービス管理者(私)のGoogleドライブ上のスプレッドシートに暗 号化して保管・管理しています。(DBで管理しても良かったのですが、冒頭で「DB が煩わしい」と言った手前、そういう作りにしました笑)
❏ サンプルアプリのソースコードは、近いうちにGitHub上で公開しようと 思ってます。 ❏ リファクタリング、説明コメントの追記等をしたいので、年内にはアップしたい、、、 と思ってます。 ❏ https://github.com/macochin