Should Every Navigation Screen, however small, use TCA @Reducer

The library is not really prescriptive about this. A good general rule of thumb is to map a reducer to a particular screen/feature, but you are free to draw the line wherever you so choose, and you are free to mix/match paradigms. You may find a particular screen does not need to be a full-blown TCA feature, and you may find that a particular screen works well in TCA but does not need to be composed directly into a parent and instead can be spun up as an "isolated" store.

Is there any guideline that an experienced developer but total swift/ios noob can use? I looked at syncups, the most promoted example of TCA based app. It is a good start for me. When in doublt I look at it first, then scan through Examples folder bundled with the TCA source. Still, syncups seems too small of an example I would love someone who did a much bigger app with recent enough version of TCA come forward and say - these patterns work best. So far I found articles discussing TCA over a longer/bigger projects - but I find them being impacted by TCA maturing enough only lately. If TCA was Model only in MVVM, I would care much less - implemented something custom, then transitioned to TCA. But my understanding is that TCA is both Model (via @Shared) and ViewModel per view, which makes transitioning existing app challenging. So I want to make an architectural decision early. As a noob, that is a mission impossible. So any advice welcome

Oh, in the heat of discussion forgot to thank you for the prompt answer. My bad

1 Like