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
490
Redux/Middlewareを酷使するためにスロットマシーン書いた
We Are JavaScripters! @9th
8845musign
July 20, 2017
Tweet
Share
More Decks by 8845musign
See All by 8845musign
Ubie Vitalsの取り組み紹介
8845musign
0
530
業務システムの銀の弾丸? メモ機能を考察する
8845musign
2
210
業務システムに必要なアクセシビリティ
8845musign
1
910
業務システム狂詩曲
8845musign
3
1.9k
READING The Atomic Workflow
8845musign
3
610
いまさら styled components 入門した
8845musign
3
770
いろはとアップデート LIGHTNING DESIGN SYSTEM
8845musign
0
1.5k
チームをかえていくこと そして、泥臭さについて
8845musign
1
1.8k
感性デザインとは?
8845musign
3
1.6k
Other Decks in Technology
See All in Technology
lintnet - General purpose linter powered by Jsonnet
szksh
4
130
Lucene/Elasticsearch の Character Filter でユニコード正規化するとトークンのオフセットがズレるバグへの Workaround - Search Engineering Tech Talk 2024 Spring
kampersanda
0
380
Safie Viewer for iOS の 技術的負債との付き合い方
safie
0
120
Go1.21から導入された Go Toolchainの仕組みをまるっと解説
yamatoya
12
2.7k
asoview! Company Deck for engineer
asoviewinc
0
35k
メトリクス、ログ、トレースをうまく使い分けて可観測性を高めよう!
masayoshi
8
3.7k
20240530_洲崎 Amazon Connectの概要と活用パターン
suzakiyoshito
0
190
Extending kotlin-inject for fun & profit
vrallev
2
190
その失敗から何を学ぶ?不確実性をマネジメントして目標達成するための心得 #webtan
aki_iinuma
19
5.2k
テストスライド
kokorozashiseki
0
170
Platform Orchestrators: The Missing Middle of Internal Developer Platforms?
syntasso
1
150
TypeScripterに送るIaCの世界への招待〜AWS CDKと共に〜/inviting-typescripters-to-the-world-of-iac-with-aws-cdk
tomoki10
0
410
Featured
See All Featured
Creatively Recalculating Your Daily Design Routine
revolveconf
213
11k
Building a Modern Day E-commerce SEO Strategy
aleyda
22
6.5k
[RailsConf 2023] Rails as a piece of cake
palkan
31
4.2k
Visualization
eitanlees
137
14k
Scaling GitHub
holman
457
140k
Teambox: Starting and Learning
jrom
129
8.5k
Building an army of robots
kneath
300
42k
Testing 201, or: Great Expectations
jmmastey
32
6.8k
A better future with KSS
kneath
231
17k
Building Your Own Lightsaber
phodgson
101
5.8k
YesSQL, Process and Tooling at Scale
rocio
165
14k
Raft: Consensus for Rubyists
vanstee
133
6.4k
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
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠