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
vuexを使ってみなかった話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
atsushiss15
March 17, 2017
Technology
2
1.4k
vuexを使ってみなかった話
atsushiss15
March 17, 2017
Tweet
Share
Other Decks in Technology
See All in Technology
visionOS 開発向けの MCP / Skills をつくり続けることで XR の探究と学習を最大化
karad
1
570
エンジニアリングマネージャーの仕事
yuheinakasaka
0
110
最強のAIエージェントを諦めたら品質が上がった話 / how quality improved after giving up on the strongest AI agent
kt2mikan
0
190
OSC仙台プレ勉強会 AlmaLinuxとは
koedoyoshida
0
190
Tebiki Engineering Team Deck
tebiki
0
27k
[E2]CCoEはAI指揮官へ。Bedrock×MCPで構築するコスト・セキュリティ自律運用基盤
taku1418
0
190
Cortex Code CLI と一緒に進めるAgentic Data Engineering
__allllllllez__
0
410
TypeScript 7.0の現在地と備え方
uhyo
7
1.7k
Claude Code 2026年 最新アップデート
oikon48
13
11k
Postman v12 で変わる API開発ワークフロー (Postman v12 アップデート) / New API development workflow with Postman v12
yokawasa
0
140
ガバメントクラウドにおけるAWSの長期継続割引について
takeda_h
2
5.2k
Go 1.26 Genericsにおける再帰的型制約 / Recursive Type Constraints in Go 1.26 Generics
ryokotmng
0
120
Featured
See All Featured
For a Future-Friendly Web
brad_frost
183
10k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
320
Joys of Absence: A Defence of Solitary Play
codingconduct
1
310
Site-Speed That Sticks
csswizardry
13
1.1k
Discover your Explorer Soul
emna__ayadi
2
1.1k
How to Talk to Developers About Accessibility
jct
2
150
Mobile First: as difficult as doing things right
swwweet
225
10k
It's Worth the Effort
3n
188
29k
Marketing to machines
jonoalderson
1
5k
Unsuck your backbone
ammeep
672
58k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Transcript
WVFYΛͬͯΈͳ͔ͬͨ
ࣗݾհ !BUTVTIJTTʢ;͔͡Θ͋ͭ͠ʣ גࣜձࣾϓϨΠυΤϯδχΞ ৽ଔ̍
ࠓ͓͢͠Δ͜ͱ ϑϩϯτΤϯυͷঢ়ଶཧʹWVFYͳΜ͔Θͣ ࣗલͰ؆қ'MVYతͳ࣮Λͨ͠ํ͕ྑ͔ͬͨ
ϑϩϯτΤϯυͷঢ়ଶཧʹWVFYͳΜ͔Θͣ ࣗલͰ؆қ'MVYతͳ࣮Λͨ͠ํ͕ྑ͔ͬͨ ࠓ͓͢͠Δ͜ͱ
ϑϩϯτΤϯυͷঢ়ଶཧʹWVFYͳΜ͔Θͣ ࣗલͰ؆қ'MVYతͳ࣮Λͨ͠ํ͕ྑ͔ͬͨ ࠓ͓͢͠Δ͜ͱ ঢ়ଶཧʹWVFYʢ'MVYʣ͕͍͍͚ͨͲɺ աڈͷࢿ࢈͋Δ͠ɺ͍͖ͳΓಋೖ͢ΔͷେมͳͷͰ ࣗલͰ؆қ'MVYతͳ࣮Λͯ͠Έͨ
ܦҢ ܥͷ͔࣌Β7VFKTͰϓϩμΫτΛ࡞͍ͬͯ·͢ IUUQTLBSUFJP
ܦҢ ։ൃॳظػೳগͳ͔ͬͨͷͰ ঢ়ଶཧϩδοΫ֤ίϯϙʔωϯτͰ͍݁ͯͨ͠
ܦҢ ͱ͜Ζ͕ߴػೳԽʹͬͯίϯϙʔωϯτؒͰ ঢ়ଶΛڞ༗͠ͳ͚Ε͍͚ͳ͍έʔε͕૿͖͑ͯͨ
ܦҢ ࠷ॳQSPQT&WFOU&NJUUFSͰؤு͍ͬͯͨ ʢ࣌ܥΛ͍ͬͯͨͷͰEJTQBUDICSPBEDBTUͳͲۦʣ
ܦҢ ͔͠͠ɺવͷΑ͏ʹ ঢ়ଶཧͷෳࡶԽɺίϯϙʔωϯτಉ࢜ͷີ݁߹ ͱ͍͕ͬͨੜ࢝͡ΊΔ
ܦҢ ԿʹΑͬͯঢ়ଶ͕มߋ͞Εͨͷ͔͔ΓͮΒ͍ Өڹൣғ͕ෆಁ໌ͳͷͰվम͘͠
ܦҢ ԿʹΑͬͯঢ়ଶ͕มߋ͞Εͨͷ͔͔ΓͮΒ͍ Өڹൣғ͕ෆಁ໌ͳͷͰվम͘͠ Ͳ͏͢Ε͍͍ͷʁ
ܦҢ ͦ͏ͩɺ4UPSFύλʔϯΛऔΓೖΕΑ͏
Γ͍ͨ͜ͱ w ෳίϯϙʔωϯτͰঢ়ଶΛڞ༗͢Δ͜ͱ w 7JFXͱσʔλपΓͷϩδοΫΛ͢Δ͜ͱ
Γ͍ͨ͜ͱ w ෳίϯϙʔωϯτͰঢ়ଶΛڞ༗͢Δ͜ͱ w 7JFXͱσʔλपΓͷϩδοΫΛ͢Δ͜ͱ 'MVYΞʔΩςΫνϟ
'MVYΞʔΩςΫνϟͱ ࠷େͷಛσʔλͷྲྀΕΔํΛ୯Ұํ ʹݶఆ͍ͯ͠Δͱ͜Ζ 3FEVYͳͲΠϯεύΠΞͷϥΠϒϥϦ͕ز͔ͭ͋Δ
7VFKTʹWVFYͳΔͷ͕Ͱ͖͍ͯͨʂ
WVFYͱ ొਓ̏ͭ "DUJPOTɿ ඇಉظॲཧ .VUBUJPOΛίϛοτ .VUBUJPOTɿ 4UPSFͷঢ়ଶʢTUBUFʣΛมߋ 4UBUFɿ ৴པͰ͖Δ།Ұͷใݯͱͯ͠ͷঢ়ଶ 'MVYͷࢥΛ౿ऻͨ͠7VFKTಛԽͷঢ়ଶཧύλʔϯ
IUUQTWVFYWVFKTPSHKBJOUSPIUNM WVFYͱ
WVFYͱ
WVFYͱ ίϯϙʔωϯτ͔ΒTUBUFΛ͏
WVFYͱ ΞΫγϣϯΛEJTQBUDI
WVFYͰͰ͖Δ͜ͱ w ঢ়ଶͷڞ༗ w 7JFXͱϩδοΫͷ w ঢ়ଶͷมߋΛ࣮֬ʹ͍͔͚Δ͜ͱ͕Ͱ͖Δ ʢWVFEFWUPPMT͕͑Δɻศརʂʣ w 'MVY࣮ΛϥΠϒϥϦ͕ڧ੍ͯ͘͠ΕΔͷͰ
σόοάɾίʔυϨϏϡʔͳͲ৭ʑָʹͳΔ
WVFYͰͰ͖Δ͜ͱ WVFEFWUPPMT
ੋඇͱಋೖ͍ͨ͠ʂ
͔͠͠ʜ
WVFYΛಋೖ͢Δࡍͷো w طଘͷࢿ࢈ͷஔ͖͕͑ࠔ w ঢ়ଶΛ࣋ͬͨEJSFDUJWFVUJM͕େྔʹ͋ͬͨ w ෳࡶԽ͍ͯͨ͠ίϯϙʔωϯτͷϩδοΫͱঢ়ଶ w ֶशίετతͳଆ໘ w
ϑϩϯτΤϯυͷઐՈҎ֎։ൃʹՃΘΔͷͰഅ ࣛʹͳΒͳ͍ʜ
ͦ͜Ͱ·ͣϓϨʔϯͳ+BWBTDSJQUͰ 'MVYϥΠΫͳͷΛ࣮ͯ͠ΈΔ͜ͱʹ
IUUQTKQWVFKTPSHWHVJEFTUBUFNBOBHFNFOUIUNM l7VFΠϯελϯε୯७ʹEBUBΦϒδΣΫτͷΞΫηεΛϓϩ Ωγ͠·͢ɻͦΕΏ͑ʹɺෳͷΠϯελϯεʹΑͬͯڞ༗͞Ε͏Δ ঢ়ଶ͕͋Δ߹ɺγϯϓϧʹಉҰͷঢ়ଶΛڞ༗͢Δ͜ͱ͕Ͱ͖·͢z ʢ7VFKTެࣜΑΓҾ༻ʣ Ͳ͏ͬͯ࡞͔ͬͨ
IUUQTKQWVFKTPSHWHVJEFTUBUFNBOBHFNFOUIUNM 7VFΠϯελϯε୯७ʹEBUBΦϒδΣΫτͷΞΫηεΛϓϩ Ωγ͠·͢ɻͦΕΏ͑ʹɺෳͷΠϯελϯεʹΑͬͯڞ༗͞Ε͏Δ ঢ়ଶ͕͋Δ߹ɺγϯϓϧʹಉҰͷঢ়ଶΛڞ༗͢Δ͜ͱ͕Ͱ͖·͢ ͜ͷߟ͑ํΛ֦ு͍͚ͯͩ͘͠ Ͳ͏ͬͯ࡞͔ͬͨ
ొਓ4UBUFͱ"DUJPOͷ̎छྨ Ͳ͏ͬͯ࡞͔ͬͨ
͜ͷ4UPSFΛ֤ίϯϙʔωϯτͷEBUBϓϩύςΟʹ࣋ͨͤΔ Ͳ͏ͬͯ࡞͔ͬͨ
͜ΕͰ४උྃ
ϢʔβʔͷೖྗͰ4UBUFΛߋ৽͢Δ Ͳ͏ͬͯ࡞͔ͬͨ
4UBUFͷมߋΛ7JFXʹөͤ͞Δ Ͳ͏ͬͯ࡞͔ͬͨ
4UBUFͷมߋΛτϦΨʹผͷॲཧΛߦ͏ Ͳ͏ͬͯ࡞͔ͬͨ
ਤʹͯ͠ΈΔ
Shared State Actions Store Component Component $BMM"DUJPO 5SJHHFS6QEBUF $IBOHF4UBUF Ͳ͏ͬͯ࡞͔ͬͨ
ʢ0QUJPOBMʣ&WFOU&NJUUFSͰΠϕϯτΛڞ༗ 5SJHHFS6QEBUF Shared State Actions Store Component Component $BMM"DUJPO $IBOHF4UBUF
Events &NJU&WFOU Ͳ͏ͬͯ࡞͔ͬͨ
ӡ༻ϧʔϧ ͳΔ͘ίϯϙʔωϯτ͔Β4UPSFͷঢ়ଶΛߋ৽͠ͳ͍ Ͳ͏ͬͯ࡞͔ͬͨ
طଘͷࢿ࢈ͷ߹্ ʮͳΔ͘ʯʹͱͲΊ͟ΔΛಘͳ͔ͬͨ
࣮ࡍ͜Μͳײ͡ʹʜ
͜ͷύλʔϯͰ͖Δ͜ͱ w ঢ়ଶʢ4UBUFʣͷڞ༗ w 7JFXͱϩδοΫͷ
͜ͷύλʔϯͰͰ͖ͳ͍͜ͱ w σʔλߋ৽ϑϩʔͷڧ੍ w ঢ়ଶͷมߋΛ࣮֬ʹ͏ ʢWVFEFWUPPMT͑ͳ͍ʣ
࣮ࡍʹಠࣗͰ'MVYϥΠΫͳ ঢ়ଶཧύλʔϯΛ࣮ͯ͠ΈͯͲ͏͔ͩͬͨ
࣮ࡍͲ͏͔ͩͬͨ ॳΓ͔ͨͬͨ͜ͱ֓Ͷ࣮ݱͰ͖ͨ
࣮ݱͰ͖ͳ͔ͬͨ෦ӡ༻ͰΧόʔ ࣮ࡍͲ͏͔ͩͬͨ
ࢥͬͨ͜ͱᶃ ϝϯςφϯεੑΛߟ͑Ε'MVYత Ͱ͋Δ͜ͱॏཁɻ ͨͩ͠ɺͦΕΛϥΠϒϥϦͰ࣮ݱ ͢Δ͔։ൃνʔϜͷจԽͰ࣮ݱ͢ Δ͔ʹɺେࠩͳ͍ͷͰʁ
ϝϯςφϯεੑΛߟ͑Ε'MVYత Ͱ͋Δ͜ͱॏཁɻ ͨͩ͠ɺͦΕΛϥΠϒϥϦͰ࣮ݱ ͢Δ͔։ൃνʔϜͷจԽͰ࣮ݱ͢ Δ͔ʹɺେࠩͳ͍ͷͰʁ EJTQBUDIͯ͠ɺDPNNJUͯ͠ʜ Έ͍ͨͳͷUPPNVDI͔ ࢥͬͨ͜ͱᶃ
7VFKTͷख͕͖ܰ͞ ࢥͬͨ͜ͱᶄ
ࢥͬͨ͜ͱᶅ اۀจԽ ૣ͍։ൃεϐʔυ յ͢લఏͰ࡞Δ ਐḿͷϓϩμΫτ ʢٕज़ελοΫ༷େ͖͘มΘΓಘΔʣ ϛχϚϜͰ൚༻తͳͷΛ࡞ΕͨͷͰ ͜͏͍ͬͨͰྑ͔͔ͬͨʁ
ಠࣗύλʔϯͰ͠Β͘։ൃͯ͠Έͨॴײ w ࠓͷͱ͜Ζී௨ʹυϥΠϒ͍ͯ͠Δ w ֶशίετ͕͔͔Βͳ͍ͷ(PPE w ϥΠϒϥϦΛհ͞ͳ͍ͷͰݟ௨͠ྑ w ٯʹֶͼΛಘΒΕΔ͜ͱ w
WVFEFWUPPMTͬͯ4UPSFΛσόοάͰ͖ͳ͍ w ࣮ϨϏϡʔ͕ਓʹґଘ w ίϯϙʔωϯτ͔Β4UPSFͷTUBUFΛॻ͖͑ͯ ͠·͍ͬͯΔίʔυ͕૿͖͑ͯͯσόοάͮ͠Β͘ 1SPT $POT
݁ طଘͷࢿ࢈Λߟྀ͠ͳ͍͍ͯ͘ͷͰ͋ΕɺWVFY ಋೖ͍ͯͬͨ͠ํ͕͍͍ͱࢥ͏ɻ ͱֶ͍͑शίετΛׂ͔ͣʹϛχϚϜͷ࣮͕͋Ε ेͱ͍͏߹ɺಠࣗͰ࡞ͬͯΈΔͷ͋Γɻ
݁ ͪͳΈʹʜ ,"35&ܥ͔ΒܥҠߦ͍ͯ͠Δ࠷தͳͷͰɺ ৽͘͠࡞Δ෦͔ΒWVFYʹ͚͍ۙͮͯ͘ॴଘɻ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ