Book Image

An iOS Developer's Guide to SwiftUI

By : Michele Fadda
Book Image

An iOS Developer's Guide to SwiftUI

By: Michele Fadda

Overview of this book

– SwiftUI transforms Apple Platform app development with intuitive Swift code for seamless UI design. – Explore SwiftUI's declarative programming: define what the app should look like and do, while the OS handles the heavy lifting. – Hands-on approach covers SwiftUI fundamentals and often-omitted parts in introductory guides. – Progress from creating views and modifiers to intricate, responsive UIs and advanced techniques for complex apps. – Focus on new features in asynchronous programming and architecture patterns for efficient, modern app design. – Learn UIKit and SwiftUI integration, plus how to run tests for SwiftUI applications. – Gain confidence to harness SwiftUI's full potential for building professional-grade apps across Apple devices.
Table of Contents (25 chapters)
Free Chapter
1
Part 1: Simple Views
5
Part 2: Scrollable Views
8
Part 3: SwiftUI Navigation
11
Part 4: Graphics and Animation
14
Part 5: App Architecture
17
Part 6: Beyond Basics

Part 5: App Architecture

In this part, we will focus on the transitional effect that SwiftUI brings in structuring applications within the Apple ecosystem. It kicks off with a pragmatic perspective on segmenting applications into more manageable units, emphasizing a tailored approach to architecture rather than following a cookie-cutter approach. This discussion highlights the importance of using architectural diagrams and following simple and minimalist design principles. This part explores the principle of dependency inversion, the basics of clean architecture, decoupling strategies for components, state management, and news about state bindings introduced in iOS 17.

Our journey then takes us deeper into the theoretical basis of modern application architecture, with particular emphasis on the iOS world. It will equip you with an understanding of software architecture and provide a framework to be able to evaluate the advantages of a good architecture. This part attempts to devise...