iOS Development and the Wrong Kind of MVC
Jimmy M Andersson

I must admit I was looking for something beyond MVC and initially got distracted with MVVMC and then realized it was the same with an extra VM thrown in and didn’t really address what I was seeking which was a comprehensive architecture solution!

I’ve since discovered the CLEAN architecture model which comes from Robert C. Martin. This removes the View into a View>Interactor>Presenter cycle with prototype conformance between them all and only fixed structs as parameters— which allows for such simple code testing of the view stuff, you’ll likely never use UI tests again!

Also, this ‘CLEAN’ model really utilizes dependency injection to it’s fullest to ensure that the interactor class in referencing both worker classes or entity classes has a compile time dependency but not a runtime one — so again very easy to mock and test all aspects of the app code.

For reference there’s a great set of xcode templates — — which demonstrate the whole idea!