iOS & Swift

Advanced iOS App Architecture

This book takes a deep dive into modern iOS app architecture and shows you how to design clean and maintainable real-world apps. By René Cacheaux & Josh Berlin.

Read for Free with the Personal Plan* * Includes this and all other books in our online library See all benefits
Buy Individually $59.99* *Includes access to all of our online reading features.
Leave a rating/review
Download materials
Buy paperback—Amazon Comments
Save for later
Share

Who is this for?

This book is for intermediate iOS developers who already know the basics of iOS and are looking to build apps using defined architectures, making apps cleaner and easier to maintain.

Covered concepts

  • Navigating Architecture Topics
  • Managing Dependencies
  • MVVM Architecture
  • Redux Architecture
  • Elements Architecture
  • SwiftUI
Implement Modern Clean Architectures in Your iOS Apps!

Apps are becoming more complex, and development teams are being pressured to deliver faster results in the face of constantly changing requirements. Now, more than ever, you need to understand and apply good software architecture practices in your projects.

Advanced iOS App...

more

Before You Begin

This section tells you a few things you need to know before you get started, such as what you’ll need for hardware and software, where to find the project files for this book, and more.

Section I

1
Toggle description
A quick introduction over what you'll be learning this book, what the goals are of this work, and what you'll need to get started.
There are a lot of aspects to consider when selecting an architecture for you and your team. This chapter provides a high-level overview of these aspects, such as qualities to look for in an architecture and more.
3
Toggle description
In this book, you’ll use a fully-fledged, real-world example app, reconfigured each chapter for the specific architectures that this book will cover. The app used through this book is Koober, a ride-hailing app with just enough complex features to give you a feel for different architectures.
Toggle description
We all depend on one thing or another in the real world, and architecting your applications is no different. You’ll learn how objects depend on other objects to prevent creating monolithic objects from doing all the work, and instead see how comparmentalizing can make them more reusable and testable.
Toggle description
In this chapter, you’ll be taken through the history of MVVM and its concepts. You’ll then walk through the Koober application and explore how it’s been architected using the MVVM architecture approach.
Toggle description
In this chapter, you’ll be taken through the history of Redux and its concepts. You’ll then walk through the Koober application and explore how it’s been architected using the Redux architecture approach.
Toggle description
Elements is an architecture meant to make iOS development fun and flexible. Elements organizes your codebase and makes your project easy for anyone to navigate. This organization allows you to make changes to layers of your application without affecting stability. A set of "Elements" make up the architecture.
Toggle description
In Part 1 you learned about Elements and how to design User Interface and Interaction Responder elements. In this chapter, you'll take a deep dive into two more elements: Observer and Use Case.
Toggle description
In this chapter, you’ll be given an introduction to SwiftUI which Apple have released at WWDC 2019. You’ll then walk through how to get Koober ready for SwiftUI while keeping your current architectural approaches.