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
プロトタイピングするならFirebaseを使ってみよう
Search
Shuichi Nagao
August 07, 2018
Programming
0
1.8k
プロトタイピングするならFirebaseを使ってみよう
Firebaseが非常に便利になってきており、プロトタイピングをするのにもって来いです。社内ハッカソン(プロトタイピング)でFirebaseをフルに利用した時に感じたことについてです。
Shuichi Nagao
August 07, 2018
Tweet
Share
More Decks by Shuichi Nagao
See All by Shuichi Nagao
UX for Key Management
ngo275
0
120
深センではテクノロジーを使う人がイノベーションを起こしている
ngo275
0
620
スマートコントラクトのデプロイって何だろう
ngo275
0
840
Ethereumで開発を始めるなら知っておきたいこと
ngo275
10
5.2k
スマートコントラクトをHTTPで実行する
ngo275
0
140
EOSでスマートコントラクトを実行してみる
ngo275
0
1.2k
iOSアプリエンジニアがReact Nativeを使ってみて
ngo275
0
280
中東のシリコンバレーことイスラエルに行ってきた
ngo275
0
150
ペイモのアーキテクチャ
ngo275
0
700
Other Decks in Programming
See All in Programming
まだ間に合う!Claude Code元年をふりかえる
nogu66
5
930
re:Invent 2025 トレンドからみる製品開発への AI Agent 活用
yoskoh
0
620
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
150
TestingOsaka6_Ozono
o3
0
270
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
5.1k
Vibe codingでおすすめの言語と開発手法
uyuki234
0
170
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
410
Graviton と Nitro と私
maroon1st
0
160
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
160
Basic Architectures
denyspoltorak
0
190
Findy AI+の開発、運用におけるMCP活用事例
starfish719
0
2.1k
フロントエンド開発の勘所 -複数事業を経験して見えた判断軸の違い-
heimusu
6
2.4k
Featured
See All Featured
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
38
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Ruling the World: When Life Gets Gamed
codingconduct
0
120
WCS-LA-2024
lcolladotor
0
410
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.5k
Context Engineering - Making Every Token Count
addyosmani
9
590
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
78
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
280
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
540
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Producing Creativity
orderedlist
PRO
348
40k
Transcript
ϓϩτλΠϐϯά͢ΔͳΒ FirebaseΛͬͯΈΑ͏ @ngo275 2018.8.7 1
ࣗݾհ •໊લɿӬඌमҰ (@ngo275) •ձࣾɿAnyPay •͖ͳݴޠɿSwift •࠷ۙ৮Ε͍ͯΔݴޠɿJSɾதࠃޠ •ωΠςΟϒΞϓϦͷ։ൃ (Swift / React
Native) ΛϝΠϯʹɺόοΫΤϯυͱ͔ॻ͍ͨΓͯ͠· ͢ •࠷ۙݸਓͰΞϓϦग़͠·ͨ͠(ϚοϋϦʔμʔ) 2
Α͋͘Δ •ΞϓϦͷϓϩτλΠϓΛͱʹ͔͘ૣ ͘࡞Γ͍ͨ •ͱ͍͑ɺαʔόʔΞϓϦ̍ਓ Ͱॻ͘ͷྲྀੴʹΩπΠɻɻ •'JSFCBTF͕ศརΒ͍͠ •۩ମతʹԿΛ͏ͷͩΖ͏ɻɻ •(͋ɺAnalyticsͬͨ͜ͱ͋ΔΑ 3
͢͜ͱ •Firebaseͷػೳհ •֓ཁ •Α͘ΘΕΔαʔϏεͨͪ •FirebaseͰͷϓϩτλΠϐϯάΛ۩ମྫͰݟͯ ͍͘ 4
͢͜ͱ •Firebaseͷػೳհ •֓ཁ •Α͘ΘΕΔαʔϏεͨͪ •FirebaseͰͷϓϩτλΠϐϯάΛ۩ମྫͰݟͯ ͍͘ 5
Firebaseͷ֓ཁ͓͞Β͍ •2011ʹ࢝·ͬͨmBaasͰɺ2014ʹGoogleʹ ങऩ͞Εͨ •2017ʹΫϥογϡϨϙʔτ(Crashlytics) ϕʔλ৴(beta)ͷαʔϏεΛఏڙ͍ͯͨ͠ Fabric͕Googleʹങऩ͞ΕɺFirebaseʹ౷߹ •ϞόΠϧΞϓϦ։ൃʹඞཁͳػೳΛఏڙ͢Δαʔ Ϗε •ΞφϦςΟΫεɺΫϥογϡϨϙʔτɺϓογϡ௨ ɺσʔλϕʔεɺೝূػೳɺετϨʔδ…
6
͢͜ͱ •Firebaseͷػೳհ •֓ཁ •Α͘ΘΕΔαʔϏεͨͪ •FirebaseͰͷϓϩτλΠϐϯάΛ۩ମྫͰݟͯ ͍͘ 7
FirebaseͷαʔϏεͨͪ Grow your business Improve app quality Build better apps
8
FirebaseͷαʔϏεͨͪ Grow your business Improve app quality Build better apps
ίίΒΜ ͱΓ͋͑ͣ ೖΕΔ͜ͱ͕ଟ͍ 9
FirebaseͷαʔϏεͨͪ Grow your business Improve app quality Build better apps
ࠨ্Λͬͯ ϓϩτλΠϐϯά ͍ͯ͘͠!! 10
Cloud Firestoreͱ •֓ཁ •ࡶʹݴ͏ͱRealtime Databaseͷ্Ґޓ •ΫϥυͷDBͰ෦GoogleͷDatastore •DBͷߋ৽Λ؆୯ʹϦΞϧλΠϜͰड͚औΔ͜ͱ͕Ͱ ͖Δ (web socketͱ͔ΛΘ͟Θ͟ॻ͔ͳ͍͍ͯ͘)
•ར༻ྫ •νϟοτػೳ •ϓϨθϯεݕ (ΦϯϥΠϯ͔Ͳ͏͔) 11
Cloud Functionsͱ •֓ཁ •AWSͷLambdaͱಉ͡αʔόϨεͷόοΫΤϯυ •node.jsͰίʔυΛॻ͍ͯupload͢ΔͱҙͷλΠϛ ϯάͰͦͷίʔυΛ࣮ߦͰ͖Δ •ઌϕʔλ͕ͱΕͨ •ར༻ྫ •Firestoreʹॻ͖ࠐΈ͕͋ͬͨΒɺϓογϡ௨Λૹ Δ
12
Firebase Authenticationͱ •֓ཁ •ΞϓϦͷϩάΠϯػೳΛߦͰ࣮Ͱ͖ΔΑ͏ʹ ͳΔ •ϩάΠϯϓϩόΠμ๛ •ϝʔϧɾి൪߸ɾGoogleɾPlayήʔϜɾFacebookɾ TwitterɾGitHubɾಗ໊ •ϝʔϧΛૹͬͯϦϯΫΛ౿·ͤΔɺSMSΛૹ৴ͯ͠ೝূ ίʔυΛૹΔɺͱ͍͏͜ͱ͕FirebaseͰ؆୯ʹͰ͖Δ
•Cloud StorageͳͲͷݖݶཧ͍͢͠ 13
Cloud Storageͱ •֓ཁ •AWSͷS3ͱಉ͡ͰɺGoogle൛ͷετϨʔδ •FirebaseΛ͏ͱɺϑΝΠϧΞοϓϩʔυʹ͓͚ΔΞ ΫηείϯτϩʔϧɺΞοϓϩʔυઌͷURLͷऔ ಘɾอଘͳͲ͕γʔϜϨεʹͰ͖Δ •ར༻ྫ •ϢʔβͷϓϩϑΟʔϧը૾ͷอଘ 14
͢͜ͱ •Firebaseͷػೳհ •֓ཁ •Α͘ΘΕΔαʔϏεͨͪ •FirebaseͰͷϓϩτλΠϐϯάΛ۩ମྫͰݟͯ ͍͘ 15
ϓϩτλΠϐϯάͱ •ػೳͷ࣮ݱՄೳੑ •ͦͷػೳ͕ຊʹϢʔβʹͱͬͯՁ͋Δͷ ͳͷ͔ ➡͜ΕΒΛݕূ͢Δ͜ͱ͕తͰ͋ͬͯɺ࡞Δ ͜ͱ͕తͰͳ͍
IoT ✘ iOSͷϓϩτλΠϐϯά •࡞Γ͍ͨͷ •ϚΠίϯͰGPSใΛऔಘͯ͠αʔόʹૹΓଓ͚ɺ ͦͷσʔλΛΞϓϦͰϦΞϧλΠϜͰද͍ࣔͨ͠ •ݕূ͍ͨ͜͠ͱ •࣮ݱՄೳ͔ɺ৺Α͘GPSใΛఏڙͰ͖Δͷ͔ •αʔόͱΞϓϦ̍ਓͰ࣮͢Δ 17
શମߏ Cloud IoT Core Cloud PubSub MQTT GPS ͜͜ΛͲ͏͢Δͷ͔ 18
ैདྷͷํ๏ͰϓϩτλΠϐϯά Cloud IoT Core Cloud PubSub MQTT GPS API DB
Cloud Storage 19
ैདྷͷํ๏ͰϓϩτλΠϐϯά Cloud IoT Core Cloud PubSub MQTT GPS API DB
Cloud Storage 20 APIΛ࡞Δͱ࣮ྔ͕େ෯ʹ૿͑Δ ϓϩτλΠϐϯάͳͷʹ! (ೝূɺσʔλͷCRUDɺϦΞϧλΠϜ௨৴)
FirebaseͰϓϩτλΠϐϯά Cloud IoT Core Cloud PubSub MQTT GPS 21
FirebaseͰϓϩτλΠϐϯά Cloud IoT Core Cloud PubSub MQTT GPS 22 Firebase෦࣮ྔ͕΄ͱΜͲͳ͍
ΞϓϦͷ։ൃʹूதͰ͖Δ (ೝূɺσʔλͷCRUDɺϦΞϧλΠϜ௨৴)
·ͱΊ •αʔόͷίʔυΛॻ͔ͳ͍͜ͱʹΑΓΞϓϦͷ ࣮ʹूதͰ͖Δ •ϓϩτλΠϓͰݕূ͍ͨ͜͠ͱʹ࣌ؒΛׂ͚Δ •ϓϩμΫγϣϯར༻ྫ͕গͳ͘ӡ༻্ͷݟ͕ গͳ͍ͨΊɺେ͖ͳมߋʹڧ͍ͷ͔ෆ҆ •DBͷॻ͖ࠐΈΛΞϓϦ͔Βߦ͏ͷා͍ •ѱҙͷ͋ΔϢʔβΛ͘ͷ͕͍͠ 23
ίʔυͷࢀߟྫ(ެ։ͨ͠ΞϓϦ) •Firebase •Cloud Firestore •ಗ໊ϩάΠϯ •Cloud Storage •Firebase Cloud Messaging
•Cloud Functions •Pring 24 https://github.com/mach-team/mach-reader-ios