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
workboxで簡単にオフライン対応しよう_JS祭ver
Search
kaidouji85
November 30, 2019
Programming
0
500
workboxで簡単にオフライン対応しよう_JS祭ver
kaidouji85
November 30, 2019
Tweet
Share
More Decks by kaidouji85
See All by kaidouji85
一発芸!!なんちゃってローカライズ
kaidouji85
0
61
AWSだけでネット対戦できるブラウザゲームを作った話
kaidouji85
0
58
GitHub CopilotでJavaScript開発効率を爆上げする
kaidouji85
0
100
Serverless + Fargate構成で継続的デリバリーの速度を劇的に改善した話
kaidouji85
0
890
サーバーレスアーキテクチャこそ"ヘキサゴナルアーキテクチャ"
kaidouji85
0
100
サーバーレスでターンベース制のネット対戦ゲームを作った話
kaidouji85
0
610
CDKで構築したFargateのデプロイ時間を改善した話
kaidouji85
2
540
ブラウザゲームで視聴者参加型のゲーム配信
kaidouji85
0
340
JSだけでバックエンド環境構築、IaC、自動デプロイまでやってみた話
kaidouji85
0
370
Other Decks in Programming
See All in Programming
より安全で効率的な Go コードへ: Protocol Buffers Opaque API の導入
shwatanap
2
360
知っているようで知らない"rails new"の世界 / The World of "rails new" You Think You Know but Don't
luccafort
PRO
1
180
RDoc meets YARD
okuramasafumi
4
170
Reading Rails 1.0 Source Code
okuramasafumi
0
250
2025 年のコーディングエージェントの現在地とエンジニアの仕事の変化について
azukiazusa1
24
12k
今だからこそ入門する Server-Sent Events (SSE)
nearme_tech
PRO
3
240
AI Coding Agentのセキュリティリスク:PRの自己承認とメルカリの対策
s3h
0
230
HTMLの品質ってなんだっけ? “HTMLクライテリア”の設計と実践
unachang113
4
2.9k
プロパティベーステストによるUIテスト: LLMによるプロパティ定義生成でエッジケースを捉える
tetta_pdnt
0
3.3k
Ruby Parser progress report 2025
yui_knk
1
450
速いWebフレームワークを作る
yusukebe
5
1.7k
Kiroで始めるAI-DLC
kaonash
2
610
Featured
See All Featured
Side Projects
sachag
455
43k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Embracing the Ebb and Flow
colly
87
4.8k
Six Lessons from altMBA
skipperchong
28
4k
Fireside Chat
paigeccino
39
3.6k
Being A Developer After 40
akosma
90
590k
Building Adaptive Systems
keathley
43
2.7k
Code Review Best Practice
trishagee
71
19k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
920
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
How to Ace a Technical Interview
jacobian
279
23k
Transcript
XPSLCPYͰ؆୯ʹ ΦϑϥΠϯରԠ͠Α͏ ౙͷ+BWB4DSJQUࡇJOϝϯόʔζΩϟϦΞ גࣜձࣾΦʔϓϯετϦʔϜ ɹ༎հ
ࣗݾհ ɹ༎հ ϓϩάϥϚʔ झຯͰήʔϜ࡞ͬͯ·͢ +4େ͖
8&#ΞϓϦ
8&#ͩͱ ΦϑϥΠϯͰԿ Ͱ͖ͳ͍
ͦͷ 8PSLCPYͳΒ ղܾͰ͖Δ
ΞδΣϯμ ΦϑϥΠϯΩϟογϡͱ ඪ४ػೳͰΦϑϥΠϯରԠ XPSLCPYͰΦϑϥΠϯΩϟογϡ͢Δ 4FSWJDF8PSLFSߋ৽ ·ͱΊ
ΞδΣϯμ ΦϑϥΠϯΩϟογϡͱ ඪ४ػೳͰΦϑϥΠϯରԠ XPSLCPYͰΦϑϥΠϯΩϟογϡ͢Δ 4FSWJDF8PSLFSߋ৽ ·ͱΊ
ΦϑϥΠϯΩϟογϡ ҰಡΈࠐΜͩαΠτΛΦϑϥΠϯঢ়ଶ ͰݟΔ͜ͱ͕Ͱ͖ΔΈ *&Ҏ֎ͲͷϒϥβͰରԠࡁΈ
αϯϓϧ IUUQTHCSBWFSCVSTUDPN
ղઆ ࣗ࡞ήʔϜͰ͢ ҰಡΈࠐΊɺΦϑϥΠϯͰϓϨΠՄೳ ෭࣍ޮՌͱͯ͠ɺճҎ߱ϩʔυ͕ര ίʔυHJUIVCʹެ։͍ͯ͠·͢ IUUQTHJUIVCDPNLBJEPVKJTUVEZUISFFKT
ΞδΣϯμ ΦϑϥΠϯΩϟογϡͱ ඪ४ػೳͰΦϑϥΠϯରԠ XPSLCPYͰΦϑϥΠϯΩϟογϡ͢Δ 4FSWJDF8PSLFSߋ৽ ·ͱΊ
ඪ४"1*αϯϓϧ XPSLCPYΛΘͳͯ͘ɺ ΦϑϥΠϯΩϟογϡ࣮ݱՄೳ αϯϓϧίʔτҎԼ IUUQTHJUIVCDPNLBJEPVKJDBDIF FYBNQMFCMPCNBTUFSQVCMJDTXKT
None
None
Α͔͘Βͳ͍Ͱ͢Ͷ
4FSWJDF8PSLFSͱ ϒϥβͱಠཱͯ͠ଘࡏ͢ΔϓϩάϥϜ ϒϥβλϒΛดͯ͡ɺ4FSWJDF8PSLFS ಈ͖ଓ͚Δ
4FSWJF8PSLFSͰग़དྷΔ͜ͱ ΦϑϥΠϯΩϟογϡ 1VTI௨ όοΫάϥϯυಉظ
ϒϥβ Πϯλʔωοτ
ϒϥβ Πϯλʔωοτ 4FSWJDF 8PSLFS $BDIF 4UPSBHF
ඪ४"1*ͷ ΩϟογϡɺωοτϫʔΫͷ༏ઌॱҐ͕ ͔ΓͮΒ͍ ෆཁͳͷΛΩϟογϡͯ͠ɺ ༧ظͤ͵ಈ͖Λ͢ΔՄೳੑ͕͋Δ
ΞδΣϯμ ΦϑϥΠϯΩϟογϡͱ ඪ४ػೳͰΦϑϥΠϯରԠ XPSLCPYͰΦϑϥΠϯΩϟογϡ͢Δ 4FSWJDF8PSLFSߋ৽ ·ͱΊ
8PSLCPYͱ ΦϑϥΠϯΩϟογϡൺֱత༻ҙʹ ࣮ݱͰ͖ΔϥΠϒϥϦ ΦϑϥΠϯΩϟογϡͷ σϑΝΫτελϯμʔυ ࢦఆͨ͠ϦΫΤετΛΩϟογϡ͢Δ
ίʔυྫ IUUQTHJUIVCDPNLBJEPVKJTUVEZUISFF KTCMPCNBTUFSTSDKTTXKT ઌ΄Ͳৄࡉͨࣗ͠࡞ήʔϜͷҰ෦
None
1SF$BDIF 3VOUJNF$BDIF /FUXPSL'JSTU $BDIF'JSTU 4UBMF8IJMF3FWBMJEBUF 8PSL#PYΩϟογϡ ͦͷଞॾʑʜ
4FSWJDF8PSLFSϥΠϑαΠΫϧ */45"-- 8"*5*/( "$5*7"5&
1SF$BDIF 3VOUJNF$BDIF /FUXPSL'JSTU $BDIF'JSTU 4UBMF8IJMF3FWBMJEBUF 8PSL#PYΩϟογϡ ͦͷଞॾʑʜ
1SF$BDIF */45"--࣌ʹɺҰ͚ͩΩϟογϡ͢Δ Ҏ߱ৗʹΩϟογϡ͔ΒऔΓଓ͚Δ ΩϟογϡରϑϧύεͰࢦఆ͢Δ ඞཁ࠷ݶͷIUNMɺKTɺDTTΛ Ωϟογϡ͢ΔͨΊʹ͋Δ
ϒϥβ Πϯλʔωοτ 4FSWJDF 8PSLFS $BDIF 4UPSBHF ͣͬͱ͜͜ʂ $BDIFʹηοτ
None
1SF$BDIF 3VOUJNF$BDIF /FUXPSL'JSTU $BDIF'JSTU 4UBMF8IJMF3FWBMJEBUF 8PSL#PYΩϟογϡ ͦͷଞॾʑʜ
3VOUJNF$BDIF ϒϥβͷϦΫΤετʹԠͯ͡ɺ ಈతͰΩϟογϡ͢Δ Ωϟογϡରਖ਼نදݱͰࢦఆ͢Δ ωοτϫʔΫɺΩϟογϡͷ༏ઌɺ ΩϟογϡઓུʹΑͬͯมΘΔ
None
1SF$BDIF 3VOUJNF$BDIF /FUXPSL'JSTU $BDIF'JSTU 4UBMF8IJMF3FWBMJEBUF 8PSL#PYΩϟογϡ ͦͷଞॾʑʜ
/FUXPSL'JSTU جຊతʹωοτϫʔΫ͔ΒใΛऔಘ͢Δ ωοτϫʔΫͷϨεϙϯε͕ޭͨ͠Βɺ ͦΕΛΩϟογϡʹͭΊΔ ωοτʹͭͳ͕Βͳ͍͚࣌ͩΩϟογϡΛ͏
ϒϥβ Πϯλʔωοτ 4FSWJDF 8PSLFS $BDIF 4UPSBHF ୈҰ༏ઌ ͩΊͳΒͬͪ͜ 614&35
1SF$BDIF 3VOUJNF$BDIF /FUXPSL'JSTU $BDIF'JSTU 4UBMF8IJMF3FWBMJEBUF 8PSL#PYΩϟογϡ ͦͷଞॾʑʜ
$BDIF'JSTU ݪଇͱͯ͠ɺΩϟογϡ͔ΒใΛऔಘ͢Δ Ωϟογϡ͕ͳ͍߹ɺωοτϫʔΫ͔Β ใΛऔಘ͢Δ ωοτϫʔΫͷϨεϙϯε͕ޭͨ͠߹ɺ ͦΕΛΩϟογϡʹͭΊΔ Ҏ߱ɺωοτϫʔΫͷใ͕৽͘͠ͳΖ͏͕ɺ ΩϟογϡΛ͍ଓ͚Δ
ϒϥβ Πϯλʔωοτ 4FSWJDF 8PSLFS $BDIF 4UPSBHF ͳ͚Είον ୈҰ༏ઌ */4&35
1SF$BDIF 3VOUJNF$BDIF /FUXPSL'JSTU $BDIF'JSTU 4UBMF8IJMF3FWBMJEBUF 8PSL#PYΩϟογϡ ͦͷଞॾʑʜ
4UBMF8IJMF3FWBMJEBUF ݪଇͱͯ͠ɺΩϟογϡ͔ΒใΛฦ͢ ಉ࣌ʹωοτϫʔΫΞΫηεΛͯ͠ɺ ใ͕ߋ৽͞Ε͍ͯͨΒΩϟογϡߋ৽͢Δ /FUXPSL'JSTUɺ$BDIF'JSTUͷ͍͍ͱ͜औΓͷ Πϝʔδ
ϒϥβ Πϯλʔωοτ 4FSWJDF 8PSLFS $BDIF 4UPSBHF ୈҰ༏ઌ 614&35 ͳ͚Είον
8PSLCPYͰղܾͰ͖ͳ͍ ෆཁͳΩϟογϡΛ͢ΔղܾͰ͖ͳ͍ "1*ͷ63-Λࢦఆͨ͠Βɺແ༻Ͱ Ωϟογϡ͞ΕΔ ࡞ΓࠐΈόάେ෯ʹݮΔ͕ɺ ઃܭόάফ͑ͳ͍
ΞδΣϯμ ΦϑϥΠϯΩϟογϡͱ ඪ४ػೳͰΦϑϥΠϯରԠ XPSLCPYͰΦϑϥΠϯΩϟογϡ͢Δ 4FSWJDF8PSLFSߋ৽ ·ͱΊ
48ߋ৽ͱ 4FSWJDF8PSLFSߋ৽ͨ͠ࡍʹɺ ॳճੲͷ4FSWJDF8PSLFS͕Քಇ͢Δ 4FSWJDF8PSLFSશൠͷ
48ߋ৽ͷৄࡉ લఏ 4FSWJDF8PSLFSΛొ͍ͯͨ͠ͱ͢Δ 4FSWJDF8PSLFSΛߋ৽ͨ͠ ࣄ ॳճʹҎԼ͕ൃੜ͢Δ ݹ͍4FSWJDF8PSLFS͕ಈ࡞͢Δ ߋ৽લͷ1SF$BDIF͕දࣔ͞ΕΔ
ओͳղܾํ ڧ੍తʹ"DUJWBUFͤ͞Δ ͳΔ͘$BDIFΛΘͳ͍ 4FSWJDF8PSLFS͕ߋ৽͞ΕͨΒɺ ܯࠂը໘ʹڧ੍తʹભҠͤ͞Δ
ओͳղܾํ ڧ੍తʹ"DUJWBUFͤ͞Δ ͳΔ͘$BDIFΛΘͳ͍ 4FSWJDF8PSLFS͕ߋ৽͞ΕͨΒɺ ܯࠂը໘ʹڧ੍తʹભҠͤ͞Δ
ڧ੍తʹ"DUJWBUF ݹ͍4FSWJDF8PSLFS͕Քಇ͍ͯͯ͠ɺ ແཧΓ৽͍͠ͷʹΓସ͑Δํ๏͋Δ ߹ੑΛอͭͨΊʹɺϥΠϑαΠΫϧʹ 8"*5*/(͕͋Δ ͦΕΛແࢹ͢Δ߹ɺͪΌΜͱઃܭ͠ͳ͍ͱ ഁ͢Δ
ओͳղܾํ ڧ੍తʹ"DUJWBUFͤ͞Δ ͳΔ͘$BDIFΛΘͳ͍ 4FSWJDF8PSLFS͕ߋ৽͞ΕͨΒɺ ܯࠂը໘ʹڧ੍తʹભҠͤ͞Δ
ͳΔ͘$BDIFΛΘͳ͍ /FUXPSL'JSUΛͳΔ͘༻͍Δ $BDIFʹΑΔߴԽݟࠐΊͳ͍ ݹ͍4FSWJDF8PSLFS͕Քಇ͢Δ ղܾͰ͖ͳ͍
ओͳղܾํ ڧ੍తʹ"DUJWBUFͤ͞Δ ͳΔ͘$BDIFΛΘͳ͍ 4FSWJDF8PSLFS͕ߋ৽͞ΕͨΒɺ ܯࠂը໘ʹڧ੍తʹભҠͤ͞Δ
POVQEBUFGPVOE ͦΕͬΆ͍ίʔϧόοΫ͕ؔ༻ҙ͞Ε͍ͯΔ 4FSWJDF8PSLFS3FHJTUSBUJPOPOVQEBUFGPVOE ͔݁Βݴ͏ͱ͑ͳ͍ ཧ༝ɺ4FSWJDF8PSLFSະొͰ ݺΕΔ͔Β
4FSWJDF8PSLFSϥΠϑαΠΫϧ */45"-- 8"*5*/( "$5*7"5& ݺΕΔ ͜͜ͰݺΕΔ
*/45"-- 8"*5*/( "$5*7"5& 0/61%"5&'06/%ൃՐ "$5*7"5&ͳ48͋Γ ϒϥβىಈ࣌ 8"*5*/(ͳ48͋Γ 4FSWJDF8PSLFSߋ৽ఆ
"$5*7"5&ͳ48ଘࡏఆ 4FSWJDF8PSLFS3FHJTUSBUJPOBDUJWF OVMM "$5*7"5&ͳ48͕ͳ͍ OVMMҎ֎ "$5*7"5&ͳ48͕͋Δ
ىಈ࣌ఆ͕ඞཁͳཧ༝ ͍͖ͳΓ8"*5*/(͔Β࢝·Δέʔε͕͋Δ͔Β */45"--ྃޙʹɺλϒΛด͡ͳ͍ͰҎԼΛ ࣮ߦ͢Δ ৽͍͠λϒΛ։͘ ϒϥβϦϩʔυ͢Δ
*/45"-- 8"*5*/( "$5*7"5& λϒด͡ͳ͍ ৽نλϒ 03 ϒϥβϦϩʔυ
8"*5*/(ͳ48ଘࡏఆ 4FSWJDF8PSLFS3FHJTUSBUJPOXBJUJOH OVMM 8"*5*/(ͳ48͕ͳ͍ OVMMҎ֎ 8"*5*/(ͳ48͕͋Δ
48ߋ৽ఆίʔυྫ IUUQTHJUIVCDPNLBJEPVKJTUVEZUISFF KTCMPCNBTUFSTSDKTBDUJPOTFSWJDF XPSLFSDSFBUFMJTUFOFSKT ྫͷ͝ͱࣗ͘࡞ήʔϜͷҰ෦Ͱ͢ ΞϓϦͷॳظԽ෦ͰݺΕ͍ͯ·͢
None
ΞδΣϯμ ΦϑϥΠϯΩϟογϡͱ ඪ४ػೳͰΦϑϥΠϯରԠ XPSLCPYͰΦϑϥΠϯΩϟογϡ͢Δ 4FSWJDF8PSLFSߋ৽ ·ͱΊ
·ͱΊ 8PSLCPYͳΒൺֱత༰қʹ ΦϑϥΠϯΩϟογϡΛ࣮Ͱ͖Δ ༻్ʹԠͨ͡ΩϟογϡઓུΛબ΅͏ 4FSWJDF8PSLFSߋ৽ʹ͍ͭͯ ߟ͓͑ͯ͜͏
͝ਗ਼ௌ͋Γ͕ͱ͏ ͍͟͝·ͨ͠