Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Firebaseを使って作るPWA (LINE Developer Meetup #43)
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
0918nobita
August 22, 2018
Programming
830
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Firebaseを使って作るPWA (LINE Developer Meetup #43)
LINE Developer Meetup #43で行ったLTの資料です
0918nobita
August 22, 2018
More Decks by 0918nobita
See All by 0918nobita
入門言語としての F#
0918nobita
0
470
入門SRTP - 型レベルプログラミングちょっとだけ入門
0918nobita
0
470
プログラミング"言語"をはじめよう
0918nobita
0
64
RxJSで始めるリアクティブ・プログラミング と GitHub Emoji
0918nobita
1
100
OSSとライセンスの話
0918nobita
0
120
Other Decks in Programming
See All in Programming
【高い買い物LT会】初任給で話題の国産フィジカルAIを買った話
akagami
PRO
0
150
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
3
530
新人はどこまで自力でやり、どこからAIに頼るべきか/エンジニア育成に向き合う_先輩たちの悩みと知見共有会
toppan_digital_dev
1
610
高専キャリア LT 発表内容
crysta1221
6
5.7k
Kiroで創り、AgentCoreで繋ぐ!AWSで実践する「AI-DLC」から「AIエージェント統合」までの最新地図
licux
4
660
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
100
Heart of Swift Concurrency
koher
0
280
信頼性の目標を誰も求めてない
shubox
0
500
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
6.3k
AI Agent時代のリアーキテクチャ戦略と実践
hokaccha
9
4k
Laravelのアプリケーションをどこにデプロイするか #ツナギメオフライン.9
akase244
0
120
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
2.5k
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
247
13k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
220
The Cult of Friendly URLs
andyhume
79
7k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
270
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
450
Evolving SEO for Evolving Search Engines
ryanjones
0
280
AI: The stuff that nobody shows you
jnunemaker
PRO
9
990
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.2k
Design in an AI World
tapps
1
310
Exploring anti-patterns in Rails
aemeredith
3
500
Transcript
FirebaseΛͬͯ࡞Δ PWA দຊେ -*/&%FWFMPQFS.FFUVQJO,ZPUP
ࣗݾհ ໋ཱؗେֶ ใཧֶ෦ճੜ দຊେ 5XJUUFS!OPCJUB w ໋ཱؗίϯϐϡʔλΫϥϒॴଐ w 8FCݴޠॲཧܥ։ൃ w
ؔܕϓϩάϥϛϯά )BTLFMM4.- 6TFS4USFBNͷফ͑ͨ
None
͓ॻ͖ w 18"ͷ֓ཁ ಋೖͷϝϦοτσϝϦοτ ࣮ํ๏ w طଘͷ8FCٕज़ͱͷΈ߹Θͤ 18"ͷࠓޙ w
'JSFCBTFͷ֓ཁ w ݸਓ։ൃͷΞϓϦͷհ 'JSFCBTFಋೖࣄྫ w ·ͱΊ
18" 1SPHSFTTJWF8FC"QQT
18"ͱ 8FCϖʔδΛɺ ঃʑʹωΠςΟϒΞϓϦͷΑ͏ͳڍಈΛ ࣮ݱ͢ΔΑ͏ʹ֦ுͰ͖Δٕज़
18"㲈ಛघͳ41" 4JOHMF1BHF"QQMJDBUJPO
18"Λಋೖ͢ΔϝϦοτ w ϓογϡ௨Ωϟογϡػೳ͕ར༻Մೳ w όοΫάϥϯυͰͷಉظॲཧ͕Մೳ w Πϯετʔϧͷख͕ؒল͚Δ w ΦϑϥΠϯͰಈ࡞ w
ߋ৽͕؆୯
σϝϦοτ w ϓογϡ௨όοΫάϥϯυͰͷಉظ ڥʹΑͬͯར༻Ͱ͖ͳ͍ J04 w ωΠςΟϒ͚ͷ"1*ར༻Ͱ͖ͳ͍ w ΦϑϥΠϯͰͷॲཧ͕ෳࡶʹͳΓ͕ͪ
w ඇಉظͭΒ͍ 41"ͱࣄ͕ࣅ͍ͯΔ
ಋೖࣄྫ 5XJUUFS-JUF
8JOͰ18" ৄ͘͠IUUQTEFWFMPQFSNJDSPTPGUDPNKBKQXJOEPXTQXB 681ͱͯ͠Ϗϧυͯ͠8JOEPXTετΞͰՄೳ
2ैདྷͷ࣮ͱͷҧ͍ʁ
"͋Μ·Γͳ͍
5P%P NBOJGFTUKTPOͷઃஔ 4FSWJDF8PSLFSΛಋೖ͢Δ
NBOJGFTUKTPO w ΞϓϦͷใΛ·ͱΊͨKTPOϑΝΠϧ ΞΠίϯ༻ͷը૾ εϓϥογϡը໘ ςʔϚ৭ ։͘63-ͳͲ w MJOLλάͰࢦఆ͢Δ͚ͩͰඥ͚͕ྃ
4FSWJDF8PSLFS w ϒϥβ͕όοΫάϥϯυͰ࣮ߦ͢ΔεΫϦϓτ w ϦΫΤετΛϓϩΩγ͢Δ͜ͱ͕Ͱ͖Δ w ϥΠϑαΠΫϧ͕ଘࡏ͠ɺΠϕϯτυϦϒϯͰ࣮ w %0.ʹΞΫηεͰ͖ͳ͍ ૢ࡞͢ΔͳΒQPTU.FTTBHFͰ௨৴͢Δඞཁ͋Γ
w ඞཁʹԠͯ͡ىಈऴྃ͞ΕΔͨΊมͷ͕อ࣋͞Εͳ͍ σʔλอଘʹ$BDIF *OEFYFE%#Λར༻͢Δඞཁ͋Γ w IUUQT͔MPDBMIPTU্Ͱ͔͠ಈ࡞͠ͳ͍
͓ॻ͖ w 18"ͷ֓ཁ ಋೖͷϝϦοτσϝϦοτ ࣮ํ๏ w طଘͷ8FCٕज़ͱͷΈ߹Θͤ 18"ͷࠓޙ w
'JSFCBTFͷ֓ཁ w ݸਓ։ൃͷΞϓϦͷհ 'JSFCBTFಋೖࣄྫ w ·ͱΊ
طଘͷ8FCٕज़ͱͷΈ߹Θͤ w 8FC35$ w 8FC(- w 8FC"TTFNCMZ ͜ΕΒͷٕज़͕ซ༻Մೳ
18"ͷࠓޙʜ
"QQMFͷରԠ࣍ୈ
w J04͚4BGBSJͰͷ18"ͷαϙʔτݶఆత w ϒϥβ͔Β18"Λࣗ༝ʹΠϯετʔϧ͢Δ ͜ͱΛڐ͢ʁڐ͞ͳ͍ʁ w ωΠςΟϒΞϓϦͷετΞͱͷ݉Ͷ߹͍͕ ωοΫʹͳΔ
'JSFCBTF
'JSFCBTFͷαʔϏε w )PTUJOH ੩తϑΝΠϧḉ w $MPVE'VODUJPOT 'BB4 w
$MPVE'JSFTUPSF /P42-σʔλϕʔε w 4UPSBHF ը૾ ಈը༻ετϨʔδ w "VUIFOUJDBUJPO Ϣʔβʔೝূཧ w .-,JU ػցֶशϥΠϒϥϦ
'JSFCBTF)PTUJOH w ੩తϖʔδͷϗεςΟϯά w ϧʔςΟϯάͷઃఆKTPOϑΝΠϧͰ
2σϓϩΠํ๏ʁ
"firebase deployίϚϯυΛ ୟ͚ͩ͘
$MPVE'VODUJPOT GPS'JSFCBTF w ଞͷ'JSFCBTFͷػೳ)5514ϦΫΤετʹ ΑͬͯτϦΨʔ͞ΕͨΠϕϯτʹԠͯ͡ɺ όοΫΤϯυίʔυΛࣗಈͰ࣮ߦ͢Δ w όοΫΤϯυίʔυσϓϩΠ͞Εͨݸʑͷؔ w 'BB4
'VODUJPOBTB4FSWJDF
'BB4 'VODUJPOBTB4FSWJDF w ΫϥυͷϓϩόΠμଆͰඞཁͳόοΫΤϯυ ίʔυΛ࣮ߦ͢ΔαʔϏεΠϯϑϥ w ཁόοΫΤϯυͷॲཧΛؔʹׂͯ͠ ͦΕͧΕσϓϩΠͯ͠ݺͼग़ͤΔαʔϏε
ΫϥΠΞϯτ͔Βͷ ؔͷݺͼग़͠ํ ҎԼͷछྨ ؔΛఆٛ͢Δͱ͖ʹࢦఆ w )551ϦΫΤετ w $BMMBCMF)5514 ͲͪΒΛબͿͱͯ͠'JSFCBTFͷ4%,͕ඞཁ
$BMMBCMF)5514 w 4%,ʹΑͬͯɺϦΫΤετʹೝূใ͕ ༩͞ΕΔ w ϝΠϯͷιʔεϑΝΠϧʹɺೝূใΛ Ճ͢ΔॲཧΛॻ͘ඞཁ͕ͳ͍ w ೝূใ'JSFCBTF"VUI$MPVE.FTTBHJOHͷτʔΫϯ
2σϓϩΠํ๏ʁ
"firebase deployίϚϯυΛ ୟ͚ͩ͘
$MPVE'VODUJPOTͷ ୯ମςετ w firebase-functions-testύοέʔδ͕ OQNͰ͞Ε͍ͯΔ w ΦϑϥΠϯϞʔυΦϯϥΠϯϞʔυ
ΦϑϥΠϯϞʔυͰͷ୯ମςετ w ෭࡞༻ͳ͠ʹαΠϩԽ͞ΕͨΦϑϥΠϯͷ ୯ମςετ w 'JSFCBTFϓϩμΫτͱΓऔΓ͢Δϝιου ݺͼग़͠ελϒ͞ΕΔඞཁ͕͋Δ
ΦϯϥΠϯϞʔυͰͷ୯ମςετ w σʔλϕʔεͷॻ͖ࠐΈ Ϣʔβʔͷ࡞ͳͲ ෭࡞༻ ͕࣮ࡍʹߦΘΕΔ w ςετઐ༻ͷ'JSFCBTFϓϩδΣΫτ͕ඞཁ
'JSFCBTFͷྉۚϓϥϯ w 4QBSL ແྉ ϓϥϯ w 'MBNF ྉۚݻఆ ϓϥϯ w
#MB[F ैྔ՝੍ۚ ϓϥϯ ৄ͘͠IUUQTpSFCBTFHPPHMFDPNQSJDJOH
͓ॻ͖ w 18"ͷ֓ཁ ಋೖͷϝϦοτσϝϦοτ ࣮ํ๏ w طଘͷ8FCٕज़ͱͷΈ߹Θͤ w 18"ͷࠓޙ w
'JSFCBTFͷ֓ཁ w ݸਓ։ൃͷΞϓϦͷհ 'JSFCBTFಋೖࣄྫ w ·ͱΊ
ٕज़ॻɺੵಡͯ͠·ͤΜ͔ʁ
ੵಡ ŨƃŪƄŞ lੵΜͰ͓͘zͱυΫ ಡ ͱΛ͔͚ͨᔬམ ॻΛಡ·ͣʹੵΜͰ͓͘͜ͱ ࣙԓୈ൛ΑΓ
ΞϓϦͷ֓ཁ w ੵಡফԽࢧԉ18"ʮ5TVOEPLVʯ w Ծͷຊ୨ʹੵಡঢ়ଶͷຊΛՃ͢Δ w ੵಡফԽͷਐḿ ϖʔδ ༰ ؔ࿈͢Δ(JU)VCͰͷίϛοτ
Λ ࿈ܞ4/4Ͱڞ༗Ͱ͖Δ w ਐḿ͕ग़͍ͯΔຊ΄Ͳɺ ຊ୨Ͱදࣔ͞ΕΔαϜωΠϧ͕͔ʹͳΔ w ຊ୨ʹొͰ͖Δʹ্ݶ͕͋Γɺ ਃΛ͢Ε্ݶΛஈ֊తʹղ์Ͱ͖Δ ͦͷ͔ΘΓɺ্ݶΛղ์ͨ͜͠ͱຖճ4/4Ͱڞ༗͞ΕΔ
w 'JSFCBTF)PTUJOH $MPVE'VODUJPOT $MPVE'JSFTUPSF "VUIΛར༻ #MB[Fϓϥϯ w IUUQTHJUIVCDPNOPCJUB5TVOEPLV
5TVOEPLVͷٕज़తཁૉ
5TVOEPLVͷٕज़తཁૉ w όοΫΤϯυ $MPVE'VODUJPOT'JSFTUPSF"VUI /PEFKT 7FSݻఆ w
ϑϩϯτΤϯυ /PEFKT OQN "OHVMBS 5ZQF4DSJQU 54-JOU #PPUTUSBQ 'JSFCBTF)PTUJOHͰ৴
'JSFCBTFͷ༻ײ w ϒϥβ্ͰݟΕΔίϯιʔϧ͔Βɺ %#ͷཧ͕(6*Ͱߦ͑Δͷ͕-(5. w σϓϩΠָ͕͘͢͝ w 'BB4୯ମςετ͕ͪΐͬͱେม w $MPVE'VODUJPOTʹɺ
͘࠷৽ͷ/PEFKTʹରԠͯ͠΄͍͠
·ͱΊ w 18"69ΛߴΊΔΞπ͍ٕज़ w ಋೖ؆୯ڥґଘͳ෦ʹҙ w 'JSFCBTFΊͬͪΌศར w 18"ʮ5TVOEPLVʯ։ൃத 4UBS
*TTVF ϓϧϦΫ͓ͪͯ͠·͢ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠