Choosing an Architecture: The iOS Guide
MVC, MVVM or VIPER? What about coordinators?
8 min readAug 3, 2022
This is common ground for those involved in App Development; as in how are you going to organise your code? How are you going to make sure that the classes are correctly instantiated?
This article is about choosing which architecture might be suitable for your App — for specific examples (with the code in the accompanying Git repos!) please do follow through the links featured alongside the explanations below.
Choosing an architecture
Choosing an architecture really comes down to the problem that you are attempting to solve. Therefore, in order to make a good decision we need to look at some criteria.
The criteria
- Cross-platform compatibility (imagine the advantage of cross-platform code review)
- Isolation of classes (decoupled code)
- Separation of UI and Business logic
- Testability