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
Unidirectional Data Flow in ReSwift
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Masato Oshima
February 09, 2016
Programming
1.6k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Unidirectional Data Flow in ReSwift
Kyobashi.swift #1
Masato Oshima
February 09, 2016
More Decks by Masato Oshima
See All by Masato Oshima
ECSからEKSへの移行への移行事例の紹介
mpon
6
3.8k
APIがある外部サービスはTerraformで管理できますよ
mpon
12
7.4k
Envoyを分かりやすく例えつつApp Meshの話をします
mpon
8
7.1k
AWS Fargateで得する人損する人
mpon
3
6.2k
kubernetes-meetup-4
mpon
2
2.6k
DDD Practice in iOS
mpon
0
490
Swift compile time is so slow
mpon
3
5.8k
Fight Xcode Project with Golang
mpon
1
3k
iPad Multi Taking
mpon
0
140
Other Decks in Programming
See All in Programming
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
5.3k
正しくソフトウェアを作る、前提を疑うための認知の視点 / doubt-premise
minodriven
21
6.8k
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.3k
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
140
Performance Engineering for Everyone
elenatanasoiu
0
180
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
160
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
560
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
540
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
6.9k
Creating Composable Callables in Contemporary C++
rollbear
0
150
エージェンティックRAGにAWSで入門しよう!
har1101
8
1.7k
Lessons from Spec-Driven Development
simas
PRO
0
210
Featured
See All Featured
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
610
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
270
Practical Orchestrator
shlominoach
191
11k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
The Curious Case for Waylosing
cassininazir
1
400
Navigating Weather and Climate Data
rabernat
0
220
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
580
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
150
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Transcript
Unidirectional Data Flow in ReSwift @_mpon Kyobashi.swift #1
Masato Oshima github.com/mpon @_mpon ಢݝ๕լ܊ग़ iOS Developer
None
None
DDoommaaiinn DDrriivveenn DDeessiiggnn
͋Δͷ4MBDL
ͱ͍͏͜ͱͰ 3F4XJGU ΛௐͯΈΔ
ҰఆํͷΈͷσʔλϑϩʔJO4XJGU 3FEVY͔ΒΠϯεύΠΞ͞Εͨ
3FEVY
b`3FEVYJTBOBMUFSOBUJWF PSBWBSJBUJPOPGUIF qVYGSBNFXPSL``
'MVY
b`'MVYJTUIFBQQMJDBUJPO BSDIJUFDUVSFUIBU'BDFCPPLVTFT GPSCVJMEJOHDMJFOUTJEFXFC BQQMJDBUJPOT``
ҰఆํͷΈͷσʔλϑϩʔ 4UPSFࣗࣗΛॻ͖͑Δ
+BWB4DSJQUΞϓϦέʔγϣϯͷͨΊͷϑϨʔ ϜϫʔΫɻ'MVYΛਐԽͤͯ͞ෳࡶੑΛճආ͠ Α͏ͱ͍ͯ͠Δɻ
3FEVYͱಉ͡ߏ
4UPSFΞϓϦέʔγϣϯ ͷ4UBUFΛཧ͍ͯ͠Δɻ "DUJPO4UPSFͷ4UBUFΛ มߋ͢ΔͨΊͷએݴ͕ॻ ͔Ε͍ͯΔɻ 3FEVDFS"DUJPOΛड͚ औͬͯ৽͍͠4UBUFΛฦ ͢ɻ
ϘλϯΛλοϓͨ͠ͱ͖ʹ"DUJPOΛੜͯ͠ɺ 4UPSFʹEJTQBUDI͢Δɻ
4UPSFड͚औͬͨ"DUJPOΛ3FEVDFSʹ ͢ɻ
3FEVDFS"DUJPOΛͱʹ৽͍͠4UBUF Λฦ͢ɻ
4UPSF৽͍͠4UBUFΛ4VCTDSJCF͍ͯ͠Δશ ͯͷ7JFXʹ௨͢Δɻ
None
7JFX$POUSPMMFS͕TUPSFΛTVCTDSJCF͢Δɻ
ϘλϯΛԡͨ͠ͱ͖ʹɺ"DUJPOΛੜͯ͠ɺ 4UPSFʹEJTQBUDI͢Δɻ
4UPSF"QQ%FMFHBUFͰͨͩͭଘࡏͯ͠શͯͷঢ়ଶΛ ཧ͍ͯ͠Δɻͦͯ͠ɺ4UPSF3FEVDFSΛ࣋ͪɺ3FEVDFS IBOEMF"DUJPOͱ͍͏ϝιουΛඞͣ࣋ͭɻ IBOEMF"DUJPO͖ͬ͞EJTQBUDI͞Εͨ"DUJPOͱݱࡏͷ TUBUFΛͱʹ৽͍͠"QQ4UBUFΛੜ͢Δɻ
3FEVDFS"DUJPOͷछྨʹΑͬͯॲཧΛߦ͍৽͍͠ TUBUFΛੜ͢ΔɻͱͷTUBUFΛมߋ͢Δ͜ͱ͠ ͳ͍ɻ
4UPSF͔Β৽͍͠TUBUF͕OPUJGZ͞ΕΔͷͰɺTUBUFΛ ͱʹɺϥϕϧͷදࣔΛߋ৽͢Δɻ
ΞϓϦ͕େ͖͘ͳ͖ͬͯͨ ͱ͖ʹ4UBUF͕େมͳ͜ͱʹ ͳΓͦ͏ʁ খ͞ͳมߋʹରͯ͠WJFXͷ ࠶ඳըͷύϑΥʔϚϯε Ͳ͏ͳΜͩΖ͏ʁ "OJNBUJPOͷ్தঢ় ଶཧ͢Δͷ͔ʁ
ࢀߟʹͨ͠αΠτ w IUUQTSFBMNJPOFXTCFOKJFOD[VOJEJSFDUJPOBMEBUBqPXTXJGU w IUUQGBDFCPPLHJUIVCJPqVYEPDTPWFSWJFXIUNM w IUUQTHJUIVCDPN3F4XJGU3F4XJGU w IUUQTHJUIVCDPNSBDLUSFEVY w
IUUQJOTJEFQJYJWOFUFOUSZ w IUUQRJJUBDPNLJJUBJUFNTBGCDGC
ReSwift ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ