How to Modularize an iOS App

<p>In this article, we will dive deep into how to split an iOS application into smaller modules. We&rsquo;re going to leverage XcodeGen, Clean Architecture principles, Xcode templates and more. For user interface, we will use SwiftUI, and for navigation, UIKit.</p> <p>In short, this is what you will have learned by the end of the article:</p> <ul> <li>How to divide an iOS application into layers in accordance with the Clean Architecture approach.</li> <li>How to prevent circular dependencies.</li> <li>How to use&nbsp;<a href="https://github.com/yonaskolb/XcodeGen" rel="noopener ugc nofollow" target="_blank">XcodeGen</a>&nbsp;for app modularization.</li> <li>What is the Interface Modules approach and how to implement navigation in modularized apps.</li> <li>How to generate dependency diagrams with simple command line invocations using&nbsp;<a href="https://www.graphviz.org/" rel="noopener ugc nofollow" target="_blank">GraphViz</a>.</li> <li>Other iOS modularization tools available.</li> </ul> <p>The completed demo project is available on&nbsp;<a href="https://github.com/zafarivaev/ios-swiftui-modularization" rel="noopener ugc nofollow" target="_blank">GitHub</a>.</p> <p><a href="https://levelup.gitconnected.com/how-to-modularize-an-ios-app-a8d5bdab8398"><strong>Website</strong></a></p>
Tags: Modularize