Now that we know a little bit about SwiftUI's syntax, let's look at how best to structure not only our code but also our project. In this chapter, you'll learn the importance of app architecture; we'll cover two of the most commonly used ones, Model-View-View-Model (MVVM) and Model-View-Controller (MVC), to see not only what they do, but also how we can adopt them in SwiftUI.
Learning about the importance of app architecture will allow us to not only understand but also visualize the separation of UI and application logic. More importantly, we'll learn how this separation will allow us to look closely at how SwiftUI works seamlessly with the new Combine framework in order to achieve a powerful yet efficient pattern.
The following topics will be covered in this chapter:
- UI logic – the MVVM architecture
- Design patterns...