SwiftUI And MVVM. Adding MVVM into a sample project.

Created by iOSBFree. Quickly inject MVVM into a SwiftUI sample project. This is a simple architecture course.

4.40 (22 reviews)
Mobile Apps
SwiftUI And MVVM. Adding MVVM into a sample project.
1.5 hours
Feb 2022
last update
regular price

What you will learn

Inject MVVM into a sample project using SwiftUI

Refactor using layered architecture

Inspect for memory management issues

Code review a test project for architectural issues & layered architecture

How to evaluate a project

Where to put your navigation using SwiftUI

How to remove UI from your data layers

Some tips on fundamental iOS architecture


Learn From One Of The 1st iOS Developers In The World

Our instructor Matt, has 13 years of experience in iOS and created the world's first iPhone, iPad and Apple Watch apps. Now, he dedicates his time to recording courses for iOSBFree (pronounced "iOS Be Free").

In This Course

1. This course is free. I hope that it helps to continue the discussions on architecture with the new realise of SwiftUI, which is using a new type of programming paradigm (known as Reactive Programming). We discuss MVVM and architectural design principles such as layered architecture.

2. We introduce the MVVM architectural design pattern into a sample project using a really simple approach that only takes a few minutes.

3. We focus on what's known as having a layered architecture. A layered architecture is when you separate the responsibilities into layers that sit on top of each other. As an example, we could have an application with 3 layers. Layer 1 (the lowest layer) could be the networking layer, layer 2 would sit on top consisting of our business logic and ViewModels and finally layer 3 (the top layer) would only display UI and is known as the presentation layer. The layers communicate with each other but the information passes between layers and so Layer 1 would not communicate to Layer 3 directly without passing the communication to Layer 2.

The alternative to a layered architecture is known as 'spaghetti code', which you may be familiar with. Spaghetti code doesn't have much of a structure and individual classes seem to talk to each other on an individual to individual basis. Also, each file type isn't reduced to having just one Single Responsibility (my advice: don't write a class that does more than one thing!). With spaghetti code, the classes and structs tend to do a lot of things.

Tip: Avoid writing spaghetti code because it is untidy, harder to read, lacks structure and ultimately makes it more difficult (and more expensive) to maintain.

Learning Objectives

• Quickly add MVVM to an existing project
• Understand the architecture of the MVVM design pattern
• To evaluate someone else's project, code and code-structure

Sample Code

Sample Code Is Always Included and attached to each video. You can download the same project used in each episode of the course.

What Is SwiftUI?

SwiftUI is a newly released UI Framework introduced to iOS. It aims to solve a lot of problems with apps, such as running on all platforms, reducing bugs, improving stability and bringing more developers to iOS - because it's EASIER to write apps!

Learning SwiftUI is an absolute MUST for any iOS developer looking to develop a career over the next 5 years.

This Course Is Free

This course is free. We aim to publish as many short courses as we can to help new iOS Developers apply for jobs in iOS and enter a high paying profession. We want those developers to write great apps that are robust, work correctly, and are maintainable. By supplying this information for free we hope we can reach as many people studying in the pandemic as we can.

Our Service (iOSBFree Ltd)

We are a unique career-building service sharing over 13 years of successful experience shaping the iOS industry into what it is today. Our unique information, point-of-view and service can be utilised to build highly successful and profitable careers in iOS.

A Career In iOS

iOS developers are the most sought after developers in the world! They can earn over £100,000 per year, work remotely and B in high demand for their skills! Subscribe to our YouTube channel and let us reveal all our insider secrets completely for free.

What We Teach

Career building, CV writing, interviewing skills, industry secrets, industry stories, real-life experience, iOS fundamentals, ARC memory management, Swift, architecture and best engineering practices.

Please show your support by enrolling in our course!

The Instructor

Check out our Instructor profile (just briefly) and glance over Matt's incredible unparalleled experience. After 13 years of specialising in iOS, he created a company helping people build their own successful and profitable careers in iOS too.

Our unique information cannot be found anywhere else on any platform. We not only teach code, syntax and architecture but we provide tried & tested strategies to BOOST your career forwards and build a better life!

Want To Learn More Topics?

Please send us an email with the topic you would like to learn in a swift playground and we will happily record, edit and publish it for you. Absolutely for free. Simply email community@iOSBFree.com with the subject heading, "Topic I Want To Learn".

First In The World

Not only is our instructor one of the first iOS developers in the world, but our service is also the first of its kind in the world!
iOSBFree is a truly unique one-of-a-kind service. There is no single other service offering Matt’s level of experience in any other coding course, software engineering tutorial, or career-building service anywhere in the world.

More From iOSBFree

• Download Our FREE CV Template

• Download Our Career BOOSTER Pack

• Enrol In FREE Online Courses (iOS & Swift)

• Read Our Blog

Much love.
The iOSBFree team.
Build a profitable iOS career with iOSBFree!



Introducing MVVM into SwiftUI

Memory Management

Memory management for Classes (i.e. reference types)

Navigation Ownership

Who creates the NavigationView?

Layered Architecture

Remove UI From AlertData
Remove UI From Landmark Data

Evaluating Project Architecture

How to examine for breaking architectural layers (short version)
(long version) How to examine for breaking architectural layers
Inspecting the Networking layer for its layered architecture



SwiftUI And MVVM. Adding MVVM into a sample project. - Price chart


SwiftUI And MVVM. Adding MVVM into a sample project. - Ratings chart

Enrollment distribution

SwiftUI And MVVM. Adding MVVM into a sample project. - Distribution chart
udemy ID
course created date
course indexed date
course submited by