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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
8845musign
July 20, 2017
Technology
0
590
Redux/Middlewareを酷使するためにスロットマシーン書いた
We Are JavaScripters! @9th
8845musign
July 20, 2017
Tweet
Share
More Decks by 8845musign
See All by 8845musign
Ubie Vitalsの取り組み紹介
8845musign
1
1.3k
業務システムの銀の弾丸? メモ機能を考察する
8845musign
2
300
業務システムに必要なアクセシビリティ
8845musign
1
1.1k
業務システム狂詩曲
8845musign
4
2.2k
READING The Atomic Workflow
8845musign
3
760
いまさら styled components 入門した
8845musign
3
970
いろはとアップデート LIGHTNING DESIGN SYSTEM
8845musign
0
1.8k
チームをかえていくこと そして、泥臭さについて
8845musign
1
2.2k
感性デザインとは?
8845musign
4
2k
Other Decks in Technology
See All in Technology
猫でもわかるKiro CLI(AI 駆動開発への道編)
kentapapa
0
220
(Test) ai-meetup slide creation
oikon48
3
400
AI実装による「レビューボトルネック」を解消する仕様駆動開発(SDD)/ ai-sdd-review-bottleneck
rakus_dev
0
140
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
8
7.2k
Everything Claude Code を眺める
oikon48
8
4.6k
Dr. Werner Vogelsの14年のキーノートから紐解くエンジニアリング組織への処方箋@JAWS DAYS 2026
p0n
1
140
クラウド × シリコンの Mashup - AWS チップ開発で広がる AI 基盤の選択肢
htokoyo
2
250
OSC仙台プレ勉強会 AlmaLinuxとは
koedoyoshida
0
170
オレ達はAWS管理をやりたいんじゃない!開発の生産性を爆アゲしたいんだ!!
wkm2
4
530
Yahoo!ショッピングのレコメンデーション・システムにおけるML実践の一例
lycorptech_jp
PRO
1
210
モブプログラミング再入門 ー 基本から見直す、AI時代のチーム開発の選択肢 ー / A Re-introduction of Mob Programming
takaking22
5
1.5k
今のWordPress の制作手法ってなにがあんねん?(改) / What’s the Deal with WordPress Development These Days?
tbshiki
0
460
Featured
See All Featured
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
480
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.5k
Building Adaptive Systems
keathley
44
3k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
100
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
230
Optimizing for Happiness
mojombo
378
71k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
130
Large-scale JavaScript Application Architecture
addyosmani
515
110k
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
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠