Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Scalable iOS Modularization: Learn From Scratch
Rating: 4.5 out of 5(102 ratings)
536 students

Scalable iOS Modularization: Learn From Scratch

Learn how to modularize an iOS Project with interface/implementation package approach using Swift Packages
Created byEmre Havan
Last updated 4/2024
English

What you'll learn

  • Implementing scalable iOS Modularisation
  • Achieve loosely coupled modules without the circular dependency problem
  • Understand the implementation and usage of Dependency Containers
  • Have a better understanding on how Swift Packages work
  • Hide your heavy third party dependencies behind interface packages

Course content

7 sections30 lectures4h 26m total length
  • Introduction2:35
  • Taking a Look at the App Features1:57
  • Getting To Know the Project and the App Architecture13:03
  • Unit Tests of the Project13:19

Requirements

  • Familiarity with Swift and iOS Programming Basics
  • Familiarity with Xcode
  • Ability to create small UI components (SwiftUI or UIKit)

Description

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!

Who this course is for:

  • iOS Engineers willing to level up their skills, and willing to improve their apps architecture