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
個人でPWA対応の時間管理アプリ「Hackaru」を作りました
Search
ktmouk
July 17, 2019
Programming
5
1.2k
個人でPWA対応の時間管理アプリ「Hackaru」を作りました
ktmouk
July 17, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
200
ニーリーにおけるプロダクトエンジニア
nealle
0
840
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
260
Porting a visionOS App to Android XR
akkeylab
0
470
iOS 26にアップデートすると実機でのHot Reloadができない?
umigishiaoi
0
130
PHPでWebSocketサーバーを実装しよう2025
kubotak
0
290
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
550
5つのアンチパターンから学ぶLT設計
narihara
1
170
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
290
High-Level Programming Languages in AI Era -Human Thought and Mind-
hayat01sh1da
PRO
0
780
設計やレビューに悩んでいるPHPerに贈る、クリーンなオブジェクト設計の指針たち
panda_program
6
2.1k
今ならAmazon ECSのサービス間通信をどう選ぶか / Selection of ECS Interservice Communication 2025
tkikuc
21
4k
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
What's in a price? How to price your products and services
michaelherold
246
12k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
54k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Producing Creativity
orderedlist
PRO
346
40k
Being A Developer After 40
akosma
90
590k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
Balancing Empowerment & Direction
lara
1
430
Automating Front-end Workflow
addyosmani
1370
200k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
950
Code Reviewing Like a Champion
maltzj
524
40k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Transcript
!LUNPVL ݸਓͰ18"ରԠͷ࣌ؒཧΞϓϦ࡞Γ·ͨ͠
wߕ൹༑೭ ,BJ5PNPZVLJ w ݸਓͰ18"ରԠͷ ࣌ؒཧΞϓϦΛ։ൃ͍ͯ͠·͢ɻ w ࠓ݄ ͔ΒϚωʔϑΥʔϫʔυʹೖࣾ
!2 !LUNPVL LUNPVL
!3 ԿΛൃද͢Δͷʁ w࣌ؒཧΞϓϦ)BDLBSVʹ͍ͭͯ w18"Ͱ։ൃͯ͠ྑ͔ͬͨ w18"ͷͭΒΈ
!4 ର w 18"ʹڵຯΛ͍࣋ͬͯΔํ w 18"ͰΞϓϦΛ࡞Ζ͏ͱߟ͍͑ͯΔํ
!5 ԿΛൃද͢Δͷʁ w࣌ؒཧΞϓϦ)BDLBSVʹ͍ͭͯ w18"Ͱ։ൃͯ͠ྑ͔ͬͨ w18"ͷͭΒΈ
!6 ࣌ؒཧͱʁ
!7 ʑΔ͜ͱ͕ࢁ͋Δ ษڧ ࣄ झຯ
!8 ʜ͕ɺࠓԿ͔͍֮ͨ͑ͯ͠ͳ͍ ࠓԿ͚ͬͨͬ
!9 ʜ͕ɺࠓԿ͔͍֮ͨ͑ͯ͠ͳ͍ ࠓԿ͚ͬͨͬ ࣌ؒͷৼΓฦΓ͕͍ͨ͠
!10 )BDLBSV ଌΔ IUUQTXXXIBDLBSVBQQ
!11 ࡞ۀ࣌ؒΛܭଌͯ͠ʜ
!12 άϥϑΧϨϯμʔͰৼΓฦΓ
!13 ࣗͷ࣌ؒͷ͍ํ͕͔Δ
!14 Ͳ͏ͬͯಈ͍͍ͯΔͷʁ
!15 /VYUKT 3BJMT"1*Ͱߏங
!16 ಛ w 8FCIPPL w 0"VUI w Φʔϓϯιʔε w ϚϧνσόΠεରԠ
!17 ಛ w 8FCIPPL w 0"VUI w Φʔϓϯιʔε w ϚϧνσόΠεରԠ
!18 1SPHSFTTJWF8FC"QQT
!19 ͱʁ 8FCαΠτΛɺ ετΞ͔Βμϯϩʔυͨ͠ΞϓϦͷ Α͏ʹ͑Δ͜ͱɻ ಛఆͷٕज़Λ͋ΒΘ໊͢শͰͳ͍
!20 )BDLBSVͷ "OESPJEͷϗʔϜΞΠίϯ J04ͷϗʔϜΞΠίϯ "OESPJEͱJ04ରԠ
!21 ܭଌը໘ ΧϨϯμʔը໘ Ϩϙʔτը໘
!22 ԿΛൃද͢Δͷʁ w࣌ؒཧΞϓϦ)BDLBSVʹ͍ͭͯ w18"Ͱ։ൃͯ͠ྑ͔ͬͨ w18"ͷͭΒΈ
!23 18"ͷྑ͔ͬͨ w؆୯ʹಋೖͰ͖ͨ w1$ͱϞόΠϧͷίʔυΛڞ௨ԽͰ͖ͨ
!24 ؆୯ʹಋೖͰ͖ͨ
!25
!26 ɾ8PSLCPY 4FSWJDF8PSLFS ɾ.BOJGFTU ɾ.FUB ɾ0OF4JHOBM ௨ ʑʜ
!27 ZBSOBEE!OVYUKTQXBͰύοέʔδಋೖ
!28 OVYUDPOpHKTʹϞδϡʔϧΛࢦఆ
!29 TXKT 4FSWJDF8PSLFS ͕ࣗಈੜ͞ΕΔɻ /VYUKTͰɺ 18"ͷಋೖ؆୯ʂ
!30 1$ͱϞόΠϧͷίʔυΛڞ௨ԽͰ͖ͨ
!31 ͦͦɺͳͥ18"Λಋೖͨ͠ͷʁ
!32 ͦͦɺͳͥ18"Λಋೖͨ͠ͷʁ ݸਓ։ൃͰɺJ04"OESPJE1$ͷίʔυΛ ϝϯς͢Δͷେม J04 "OESPJE 1$
!33 ͦͦɺͳͥ18"Λಋೖͨ͠ͷʁ ݸਓ։ൃͰɺJ04"OESPJE1$ͷίʔυΛ ϝϯς͢Δͷେม ࣌ؒΛܭଌදࣔ͢Δͱ͍͏γϯϓϧͳཁ݅ɻ ൃల్্ͷ18"Ͱ࣮Ͱ͖ͦ͏ͱײͨ͡
!34 ࣮ࡍɺԸܙେ͖͔ͬͨ
!35 ϨεϙϯγϒରԠ͢Δ͚ͩͰωΠςΟϒΞϓϦͬΆ͘ɻ 18"൛ 1$൛
!36 ίʔυͱςετΛڞ௨ԽͰ͖ͨɻ
!37 +BWB4DSJQUΛ͑ ωΠςΟϒΞϓϦ෩ͷ6*ɻ w εϫΠϓϝχϡʔ
!38 +BWB4DSJQUΛ͑ ωΠςΟϒΞϓϦ෩ͷ6*ɻ w υϥοάυϩοϓ w εϫΠϓͰϖʔδૹΓ
!39 ԿΛൃද͢Δͷʁ w࣌ؒཧΞϓϦ)BDLBSVʹ͍ͭͯ w18"Ͱ։ൃͯ͠ྑ͔ͬͨ w18"ͷͭΒΈ
!40 18"ͷͭΒΈ wJ04ͷରԠ͕େม
!41 18"ͷͭΒΈ wJ04ͷରԠ͕େม
!42 ྫ$PPLJFͷ
!43 ྫ$PPLJFͷ wϒϥβͱ18"Ͱ$PPLJFΛڞ༗Ͱ͖ͳ͍ wΛ࠶ىಈ͢Δͱফ͑Δ J04 Ҿ༻ʲௐࠪʳ8&#ΞϓϦΛ18"ͱͯ͠ىಈͨ͠߹ʹϒϥβͷ$PPLJF͕Ҿ͖ܧ͕ΕΔ͔֬ೝ͢Δ ˞J04ΑΓલͰΞϓϦΛ࠶ىಈ͚ͨͩ͠Ͱফ͑Δɻ ˞"OESPJEແ͠ɻ
!44 ϩάΠϯঢ়ଶͷอ࣋ͰࠔΔ ΫοΩʔɾηογϣϯ͑ͳ͍
!45 ରԠ-PDBM4UPSBHFΛ͏ τʔΫϯϕʔεͷೝূ
!46 ΞΫηετʔΫϯ +85 ͱ ϦϑϨογϡτʔΫϯͰೝূ WebUI Nuxt.js API Rails5 ϩάΠϯ
(ID, PASS) ϦϑϨογϡτʔΫϯΛฦ͢ ΞΫηετʔΫϯ +85 Λฦ͢ ΞΫηετʔΫϯͰ"1*Λૢ࡞ ϦϑϨογϡτʔΫϯͰ ΞΫηετʔΫϯΛཁٻ wϦϑϨογϡτʔΫϯͰ ΞΫηετʔΫϯΛཁٻͰ͖Δɻ wΞΫηετʔΫϯ͍༗ޮظݶʹઃఆɻ ʙ wϦϑϨογϡτʔΫϯΛ-PDBM4UPSBHF ʹอଘɻ
!47 ྫ"OESPJEʹग़དྷͯ J04ͰͰ͖ͳ͍͜ͱ͕͋Δ
!48 ͨͱ͑ʜ wϓογϡ௨ wϗʔϜը໘ʹՃ ")4 ͷҊʑ
!49 ͨͱ͑ʜ wϓογϡ௨ wϗʔϜը໘ʹՃ ")4 ͷҊʑ
!50 "OESPJEͰ18"ͷҊ͕ग़Δ͚Ͳʜ .JOJJOGPCBS Ҿ༻$IBOHFTUP"EEUP)PNF4DSFFO#FIBWJPS
!51 Ϣʔβ͕18"ΛΔ ํ๏͕༻ҙ͞Ε͍ͯͳ͍ J04ͰԿग़ͳ͍
!52 Ϣʔβ͕18"ΛΔ ํ๏͕༻ҙ͞Ε͍ͯͳ͍ J04ͰԿग़ͳ͍ ࣗલͰ࣮͢ΔͳͲͷରࡦ͕ඞཁ
!53 ͱ͍͑ ͕࣌ؒղܾͯ͘͠ΕΔ͔ʁ
!54 J04Ͱ৭ʑग़དྷΔΑ͏ʹͳͬͨ ΞϓϦϒϥβ 0"VUIೝূ͕Մೳʹ ࠨεϫΠϓͰΔ
!55 J04Ͱ৭ʑग़དྷΔΑ͏ʹͳͬͨ 8FC4IBSF"1*
!56 18"ʹग़དྷΔ͜ͱ͕૿ָ͍͑ͯ͘͠Έ͋Δ কདྷతʹܭଌதόονΛग़ͨ͠Γʜ J04Ͱ௨Λग़ͨ͠Γʜ
!57 ྫʮΔʯϘλϯͲ͏͢Δ
!58 ʮΔʯϘλϯ͕ͳ͍ͷͰɺը໘ભҠ͕ଟ͍ͱࠔΔ ϒϥβͷΔϘλϯ18"Ͱ͑ͳ͍ 18"ͳͷͰɺωΠςΟϒͷ/BWJHBUJPO#BS͑ͳ͍
!59 ରࡦྫࣗલͰʮΔʯϘλϯΛ࣮͢Δ IUUQTKBPOTFOJP ϑϨʔϜϫʔΫ͏ͷ͋Γ͔
!60 ରࡦྫʮΔʯϘλϯ͕ෆཁͳը໘ઃܭʹ )BDLBSVͷը໘ભҠϝχϡʔʹ͋Δ߲ͷΈ ϞʔμϧλϒΛۦͯ͠ը໘Λ࠷খݶʹ
!61 ࣗવͳ6*ͷ18"Λ࡞ΔͳΒ ϞόΠϧϑΝʔετͰ࡞Δͷ͕͓קΊ
!62 J04ʹରԠͤ͞ΔͳΒɺ J04ϑΝʔετ͕͓קΊɻ
!63 ·ͱΊ
!64 ·ͱΊ w18"ͷಋೖͦΜͳʹ͘͠ͳ͍ʂ wJ04͕ΜΕ
!65 18"ͷ੍·ͩଟ͍͚Ͳʜ
!66 ग़དྷΔ͜ͱ͕૿͑Δָ͠Έ͕͋Δ
!67 (JU)VCͰެ։த IUUQTHJUIVCDPNLUNPVLIBDLBSV
!68 ެࣜαΠτ͔ΒͰ͑·͢ IUUQTXXXIBDLBSVBQQ
!69 ͋Γ͕ͱ͏͍͟͝·ͨ͠