Choose a Pricing Option

Description

SwiftUI changed how we build user interfaces, but it also challenged many long-standing architectural assumptions. Patterns that worked well in UIKit don’t always translate cleanly to SwiftUI, and forcing them often leads to unnecessary layers, boilerplate, and confusion.

This book is the result of several years of real-world SwiftUI experience, experimentation, and reflection.

Rather than blindly applying a single pattern, this book explores how SwiftUI actually wants to be used. You’ll learn when MVVM helps, when it hurts, and why in many cases the view itself already fulfills the role developers traditionally assigned to a view model. From there, the book introduces alternative approaches built around clear sources of truth, lightweight views, and well-defined responsibilities.

Drawing inspiration from mature frameworks such as React, WPF, and ASP.NET, this book presents a practical and opinionated take on SwiftUI architecture. It focuses on reducing complexity, avoiding accidental abstractions, and building applications that are easier to reason about, test, and scale over time.

Inside the book, you’ll learn how to:

  • Structure SwiftUI applications without unnecessary view models
  • Decide when state should live in a view versus a shared store
  • Use the Environment effectively for global and domain-specific state
  • Separate presentation logic from business and domain logic
  • Design scalable architectures using stores, services, and bounded contexts
  • Handle navigation, validation, testing, and shared components in a clean, predictable way
  • Understand the tradeoffs behind each architectural decision

This is not a framework, a library, or a one-size-fits-all solution. It’s a guide to thinking clearly about architecture in SwiftUI and making intentional decisions based on the type of app you’re building.

If you’ve ever felt that SwiftUI apps become over-engineered too quickly, or that MVVM sometimes creates more problems than it solves, this book will give you a different perspective.

Written by Mohammad Azam, this book is for iOS developers who want clarity, simplicity, and architecture that grows with their applications instead of fighting against them.

Chapters

Introduction — Available

MVVM and the Cost of Carrying Old Patterns Forward — Available

Container/Presenter Pattern — Available

MV Pattern — Available

Communication Patterns in Observable Stores — Coming soon

Deep Dive Into Environment — Available

SwiftData Architecture — Available

Global Sheets and Toasts — Available

Validation — Available

Navigation — Available

UIKit to SwiftUI — Coming soon

Composing and Customizing Views — Coming soon

Testing — Available

Performance and Debugging — Coming soon

Firebase and Supabase — Coming soon

Mohammad Azam

Mohammad Azam is a highly experienced and accomplished developer with over a decade of professional experience in writing software. He has played an integral role in the success of several Fortune 500 companies including Valic, AIG, Dell, Baker Hughes, and Blinds.com, where he served as a lead mobile developer.

Azam's expertise has helped him become a top instructor on both Udemy and LinkedIn, with more than 70K students enrolled in his courses. He currently serves as a lead instructor at DigitalCrafts, a software bootcamp where he trains developers who now work at prestigious companies like Apple, JP Morgan Chase, and Exxon.

Azam is not only a developer and instructor but also an international speaker who has been sharing his knowledge and expertise since 2006. In his free time, he enjoys exercising and planning his next adventure to explore the unknown corners of the world.

Choose a Pricing Option