Welcome to the Scalable iOS Modularization Course. The ultimate course for iOS Modularization with Swift Packages.
In this 4 hour long, code-along content, you will learn:
How to create packages for common functionalities
How to create interface packages for dependencies and loosely couple them to your features
How Dependency Containers work and how you can implement your own
Creating packages for feature modules and fixing the circular dependency problem with interface/implementation package approach
MVVM-C architecture with SwiftUI
How to write unit tests
Are you an iOS Engineer who is looking to improve their skills? Then you are in the right place! Modularization is a vital part of iOS development that becomes more and more important as the size of the project and the team grows. By using the latest modularization tool Swift Packages provided by Apple, and learning the interface/implementation package approach, you will be able to loosely couple, connect, manage, and maintain the modules of your application. You will have a better understanding of distinct pieces of your project, easily build different parts, and iterate without worrying about building the whole project.
We will start by reviewing an existing iOS Project and will bring it to the modularized state, step by step. Along the way, you are also going to learn about DispatchQueues and Unit Testing approaches. You will be able to iterate on your codebase with SwiftUI previews and focus on certain modules of the application in isolation with Swift Packages.
Lets get started!