Krzysztof Zabłocki - Leveraging Composable Architecture at Scale | Swift Heroes 2023 Talk

  Рет қаралды 5,668

Swift Heroes

Swift Heroes

Күн бұрын

Пікірлер: 10
@otniel2663
@otniel2663 10 ай бұрын
This architecture was relevant in the React community a while ago (Redux), but the trend seems to be moving towards simpler architectures like react-query, hooks, etc. I am not sure if the iOS engineering community will follow the same path, as the problem is universal across FE development (state management is complex)
@SwiftHeroes
@SwiftHeroes 10 ай бұрын
Interesting observation, we asked Krzysztof to reply to you 😉
@rodriferretty3001
@rodriferretty3001 10 ай бұрын
Really interested about this point!
@ImTheShrey
@ImTheShrey 11 ай бұрын
We use Reactor Kit in our app with 200K daily active users. It's basically TCA philosophy with Per screen state store. And then on each view only updating if it's required slice within the state is mutated.
@rohitsainier
@rohitsainier 6 ай бұрын
Hi @ImTheShrey do you have sample repo to learn your approch here
@ihorzhukov
@ihorzhukov 5 ай бұрын
+1 on a sample if you, please.
@trendz4422
@trendz4422 Жыл бұрын
Please provide links to the sample project and swiftlint config file.
@danielt63
@danielt63 Жыл бұрын
At 7:53... Sure but the problem with these sorts of architectures is that any one action could change any piece of state. So not only do you have to assert the correct state changes, but you also have to assert that no other bits of state changed. That's n*m assertions (where n is the number of actions, and m the possible states.) In other words, your assertions grow exponentially with every action or piece of state you add. Not good!
@ImTheShrey
@ImTheShrey 11 ай бұрын
We solved it by dividing app state into per screen state. And then you do diff of a state slices (properties) when your views want to use it, so they don't refresh when other non related field in state object changes. Then to top it off, you collect all mutations Done by one action in to a batch and only update state struct in one go.
@danielt63
@danielt63 11 ай бұрын
@@ImTheShrey Sure, but every reducer receives every action. Your per screen state receives actions from other screens and it is only by convention that it doesn't act on actions from other screens. Testing to ensure that convention is where the problem lies.
Marin Todorov - A 100% SwiftUI App | Swift Heroes 2023 talk
27:23
Swift Heroes
Рет қаралды 2,7 М.
When you have a very capricious child 😂😘👍
00:16
Like Asiya
Рет қаралды 18 МЛН
黑天使只对C罗有感觉#short #angel #clown
00:39
Super Beauty team
Рет қаралды 36 МЛН
Cheerleader Transformation That Left Everyone Speechless! #shorts
00:27
Fabiosa Best Lifehacks
Рет қаралды 16 МЛН
Generic Swift: It Isn’t Supposed to Hurt - Rob Napier
58:16
ChariotSolutions
Рет қаралды 7 М.
SwiftUI Architecture - Best Practices and Principles
39:04
AppForce1
Рет қаралды 4,5 М.
So You Think You Know Swift? - Nick Lockwood
33:49
SwiftServerConf
Рет қаралды 9 М.
AI Is Making You An Illiterate Programmer
27:22
ThePrimeTime
Рет қаралды 207 М.
Swift Connection 2023 - Krzysztof Zabłocki - The Project Template
37:58
Tech Connection
Рет қаралды 1,3 М.
Mobile Warsaw #88 Krzysztof Zabłocki - The Art of Balanced Life
51:25
When you have a very capricious child 😂😘👍
00:16
Like Asiya
Рет қаралды 18 МЛН