Swift version: 5.0
MVC – short for Model-View-Controller – is Apple’s preferred way of architecting apps for its platforms, and so it’s the default approach used by most developers on Apple platforms.
In MVC each piece of your code is one of three things:
On iOS, macOS, and tvOS, view controllers span the “view” and “controller” buckets rather uncomfortably. They are more commonly used as controllers, but if you value clean code you should probably make them more like views.
SPONSOR Tired of wasting time debugging your Swift app? Instabug’s SDK is here to help you minimize your debugging time by providing you with complete device details, network logs, and reproduction steps with every bug report. All data is attached automatically. It only takes a line of code to setup. Get started for free.
Available from iOS 8.0 – learn more in my book Swift Design Patterns
Did this solution work for you? Please pass it on!
Other people are reading…
About the Swift Knowledge Base
This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.