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
Redux/Middlewareを酷使するためにスロットマシーン書いた
Search
8845musign
July 20, 2017
Technology
0
540
Redux/Middlewareを酷使するためにスロットマシーン書いた
We Are JavaScripters! @9th
8845musign
July 20, 2017
Tweet
Share
More Decks by 8845musign
See All by 8845musign
Ubie Vitalsの取り組み紹介
8845musign
0
720
業務システムの銀の弾丸? メモ機能を考察する
8845musign
2
220
業務システムに必要なアクセシビリティ
8845musign
1
980
業務システム狂詩曲
8845musign
4
2k
READING The Atomic Workflow
8845musign
3
660
いまさら styled components 入門した
8845musign
3
840
いろはとアップデート LIGHTNING DESIGN SYSTEM
8845musign
0
1.6k
チームをかえていくこと そして、泥臭さについて
8845musign
1
2k
感性デザインとは?
8845musign
4
1.7k
Other Decks in Technology
See All in Technology
終了の危機にあった15年続くWebサービスを全力で存続させる - phpcon2024
yositosi
3
3k
成果を出しながら成長する、アウトプット駆動のキャッチアップ術 / Output-driven catch-up techniques to grow while producing results
aiandrox
0
280
フロントエンド設計にモブ設計を導入してみた / 20241212_cloudsign_TechFrontMeetup
bengo4com
0
1.9k
あの日俺達が夢見たサーバレスアーキテクチャ/the-serverless-architecture-we-dreamed-of
tomoki10
0
440
WACATE2024冬セッション資料(ユーザビリティ)
scarletplover
0
190
コンテナセキュリティのためのLandlock入門
nullpo_head
2
320
10個のフィルタをAXI4-Streamでつなげてみた
marsee101
0
170
Oracle Cloud Infrastructure:2024年12月度サービス・アップデート
oracle4engineer
PRO
0
180
ずっと昔に Star をつけたはずの思い出せない GitHub リポジトリを見つけたい!
rokuosan
0
150
生成AIをより賢く エンジニアのための RAG入門 - Oracle AI Jam Session #20
kutsushitaneko
4
220
スタートアップで取り組んでいるAzureとMicrosoft 365のセキュリティ対策/How to Improve Azure and Microsoft 365 Security at Startup
yuj1osm
0
210
MLOps の現場から
asei
6
640
Featured
See All Featured
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
4 Signs Your Business is Dying
shpigford
181
21k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Designing Experiences People Love
moore
138
23k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
Six Lessons from altMBA
skipperchong
27
3.5k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
Transcript
MiddlewareΛ͏Β͢ΔͨΊʹ εϩοτŵŕţŎŖƃॻ͍ͨ We Are JavaScripters! @9th
ෲےϩʔϥʔͷྗΛ৴͡Ζ !NVTJHO גࣜձࣾνʔϜεϐϦοτےτϨͱྉཧΛ୲ ݄ҰͰ̏LHʙմΛমͬͯ·͢ ͓·͚ͰϑϩϯτΤϯυΛগʑ
? ReduxɺͲ͜ʹϩδοΫΛॻ͘ʁ
View Provider Store State Reducer Middle ware User Actions
View Provider Store State Reducer Middle ware User Actions ίίʁ
ίίʁ ίίʁ
! MiddlewareͲ͏ʁ
View Provider Store State Reducer Middle ware User Actions ίί
Pros. Dispatch 1 ࣗ༝ʹActionͷ ϑϩʔ੍͕ޚՄೳ State 2 ඞཁͳState Middlewareࣗମ͕ ͍ͬͯΔ
Action 3 ͋ΒΏΔActionʹ հೖͰ͖Δ
νʔϜʮϝϦοτ͕૾͔ͭΜʯ ouch!
࣮ྫΛަ͑ͳ͚ΕΘΒͳ͍ ͦͦ͜͜ͷنΛ࡞Βͳ͚ΕΘ͔Βͳ͍
ΞϓϦॻ͍ͪΌ͑
BINGO༻εϩοτŵŕţŎŖƃ ˞ձࣾͷࣾΠϕϯτͰ࣮ઓೖ https://github.com/8845musign/bingo-2017
DEMO
? ReduxԿΛͬͯΔͷ͔
ήʔϜશମͷ੍ޚ
εϩοτΞχϝͷ੍ޚ
ࢴਧઇͷ੍ޚ
? MiddlewareͲ͏ͳͬͯΔ͔
நબ Ϣʔβͷૢ࡞ʹΑΓ Ұͭͷ"DUJPO͕͛ΒΕΔ
நબ ࢴਧઇ εϩοτ։࢝ εϩοτऴྃ "DUJPO.JEEMFXBSF ʹΑͬͯෳͷ"DUJPO ʹղ͞ΕΔ Ξχϝʔγϣϯϧʔϓ ىಈʢεϩοτʣ Ξχϝʔγϣϯϧʔϓ
ىಈʢࢴਧઇʣ εϩοτͷ։࢝ εϩοτΞχϝ εϩοτΞχϝ εϩοτΞχϝ ࢴਧઇΞχϝ ऴྃఆ
நબ ࢴਧઇ εϩοτ։࢝ εϩοτऴྃ .JEEMFXBSFͰ ඞཁͳܭࢉ͕ ߦΘΕΔ Ϧʔϧͷֆฑͷੜ ΞλϦͷநબ εϩοτΞχϝ
εϩοτΞχϝ εϩοτΞχϝ ࢴਧઇΞχϝ ࠲ඪܭࢉ ࠲ඪܭࢉ
"DUJPOͷൃߦ ؆ུԽͯ͠ΈΔͱ 3FEVDFSʹΑΔॲཧ "DUJPOͷൃߦ .JEEMFXBSF ܭࢉ ʜ
"DUJPOͷൃߦ "DUJPOͱ3FEVDFS ͓ͦΖ͘͠ γϯϓϧʹͳΔ 3FEVDFSʹΑΔॲཧ "DUJPOͷൃߦ .JEEMFXBSF ܭࢉ ʜ தؒॲཧ
"DUJPOͷൃߦ "DUJPOͱ3FEVDFS ͓ͦΖ͘͠ γϯϓϧʹͳΔ 3FEVDFSʹΑΔॲཧ "DUJPOͷൃߦ .JEEMFXBSF ܭࢉ ʜ T
தؒॲཧ Πϕϯτͷൃߦ εςʔτͷཧ
"DUJPOͷൃߦ .JEEMXBSF ԿʹԠͯ͠ ԿʹॲཧΛܨ͙͔ ͚ͩΛߟ͑Εྑ͍ 3FEVDFSʹΑΔॲཧ "DUJPOͷൃߦ .JEEMFXBSF ܭࢉ ʜ
͕໌֬ʹͳΓׂͰ͖ͨ
ٯʹॲཧͷͭͳ͕ΓͷѲ͕େม
ٯʹॲཧͷͭͳ͕ΓͷѲ͕େม %6$,4ύλʔϯͰཧ
MiddlewareɺΞϦ͔
Έͳ͞Μ.JEEMFXBSFΛ ͏Βͯ͠Έ͍͔͕ͯʁ
એ ͝Μ৯ͳ͕ΒϑϩϯτΤϯυΛ ޠΒ͏ձΛʹߦ͍·͢ɻ IUUQTDPOOQBTTDPNFWFOU
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠