TaskList App using MVVM, SwiftUI 3, Protocol Oriented Design

Build Task List App using SwiftUI and Learn to use MVVM Design Pattern along with Protocol Oriented Programming

Mobile Apps
TaskList App using MVVM, SwiftUI 3, Protocol Oriented Design
1 hour
Jan 2022
last update
regular price

What you will learn

MVVM Design Pattern in SwiftUI

Protocol Oriented Programming

Dependency Injection in iOS App Development

Generic Repository Pattern


Welcome to this new course from DevTechie.

In this course, you will learn to build Task List app from scratch. You will start with a simple data model which will be used to structure tasks for your app. We will follow protocol oriented programming style to keep our code decoupled and this will also help us build scalable solution which can be unit tested with ease. We will learn to build out protocol with default implementation via function overloading for protocols.

You will also learn about MVVM design pattern, where we will build out Model, View and View Model for each task we will perform on our task list. This will help you understand how to design complex apps with structured code. We will adopt protocol oriented programming even in the area of View Model creation and our view models will also have protocols to conformance.

With the help of data manager protocol, you will learn how to build out Mock Data Manager which will help us better test our apps without dependency and added delay from external repositories.

This course is designed to give you understanding of MVVM in a practical term. Our recommendation would be to follow the course at least couple of time to sink in the concept well

With that said, please join me in this course to learn about MVVM in SwiftUI




Model Creation

Tasks Model

Data Manager

Data Manager Protocol
Data Manager Class

Task List View Model

Task List View Model Protocol
Task List View Model

Task List View

Task List View with Initial Implementation

Mock Manager

Mock Data Manager for Testing

New Task

New Task View Model Protocol
New Task View Model
New Task View

Finishing Task List

Task Row and Task List Final Edits


Project Files
udemy ID
course created date
course indexed date
course submited by