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
Masato Oshima
February 09, 2016
Programming
0
1.5k
Unidirectional Data Flow in ReSwift
Kyobashi.swift #1
Masato Oshima
February 09, 2016
Tweet
Share
More Decks by Masato Oshima
See All by Masato Oshima
ECSからEKSへの移行への移行事例の紹介
mpon
6
3.6k
APIがある外部サービスはTerraformで管理できますよ
mpon
12
7k
Envoyを分かりやすく例えつつApp Meshの話をします
mpon
8
6.3k
AWS Fargateで得する人損する人
mpon
3
6k
kubernetes-meetup-4
mpon
2
2.4k
DDD Practice in iOS
mpon
0
420
Swift compile time is so slow
mpon
3
5.5k
Fight Xcode Project with Golang
mpon
1
2.8k
iPad Multi Taking
mpon
0
76
Other Decks in Programming
See All in Programming
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
250
Go 1.24でジェネリックになった型エイリアスの紹介
syumai
2
300
React 19アップデートのために必要なこと
uhyo
8
1.6k
CloudRun, Spanner に対する負荷試験の反省と オブザーバビリティによるアプローチ
oyasumipants
1
160
「個人開発マネタイズ大全」が教えてくれたこと
bani24884
1
290
メンテが命: PHPフレームワークのコンテナ化とアップグレード戦略
shunta27
0
320
良いコードレビューとは
danimal141
9
6.3k
The Clean ArchitectureがWebフロントエンドでしっくりこないのは何故か / Why The Clean Architecture does not fit with Web Frontend
twada
PRO
51
16k
クックパッド検索システム統合/Cookpad Search System Consolidation
giga811
0
130
自力でTTSモデルを作った話
zgock999
0
120
SwiftUI Viewの責務分離
elmetal
PRO
2
280
はじめての Go * WASM * OCR
sgash708
1
120
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
Product Roadmaps are Hard
iamctodd
PRO
51
11k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
13
1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Speed Design
sergeychernyshev
27
820
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
11
1.3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7.1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
10
540
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
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 ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ