Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
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.9k
APIがある外部サービスはTerraformで管理できますよ
mpon
12
7.5k
Envoyを分かりやすく例えつつApp Meshの話をします
mpon
8
7.3k
AWS Fargateで得する人損する人
mpon
3
6.2k
kubernetes-meetup-4
mpon
2
2.6k
DDD Practice in iOS
mpon
0
510
Swift compile time is so slow
mpon
3
5.9k
Fight Xcode Project with Golang
mpon
1
3k
iPad Multi Taking
mpon
0
170
Other Decks in Programming
See All in Programming
Long Living Tokens, Die, Die, Die! (or: The One Ring is Banned in Modern)
sylph01
0
420
Spec-Driven Development - Why Vaadin Is the Perfect Fit
simas
PRO
0
240
SODA - FACT BOOK(JP)
sodainc
1
40k
まずはコードより業務と向き合う:テーブル解体のためにPdMを呼んだ話
sakawe_ee
0
190
地方こそサーバーレス — 10年続けた、顔が見えるチームで確かな基盤を / Serverless Matters Most in Regional Areas — 10 Years of Building Reliable Foundations with Close-Knit Teams
seike460
PRO
1
320
Secure Your Coding Agent Like It’s Malware (v1.5) 🇬🇧 @Code.talks 2026
richargh
0
110
LLM 101
dalinaum
0
470
Apple Intelligenceとオンデバイス時代の到来
yahir0
0
230
Seven New Principles of Software Engineering
yegor256
0
470
複数ドメインを一つのアプリに統合するFlutterの設計と運用_FlutterKaigi2026登壇資料(須永高弘)
takahirosunaga
0
160
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
4
3.8k
動画プレイヤーはなぜカクつくのか 〜Flutterのレンダリングとネイティブの境界を解剖する〜
naruogram
0
330
Featured
See All Featured
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
350
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
600
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.9k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
How STYLIGHT went responsive
nonsquared
100
6.4k
Statistics for Hackers
jakevdp
799
230k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
Intergalactic Javascript Robots from Outer Space
tanoku
273
28k
The SEO Collaboration Effect
kristinabergwall1
1
620
Raft: Consensus for Rubyists
vanstee
143
7.9k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
350
Mind Mapping
helmedeiros
1
430
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 ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ