Skip to main content

iOS & Swift - MVVM, Combine, SnapKit, Snapshot/UI/Unit Tests

4h 40m 2s
English
Paid

Course description

Welcome to the iOS & Swift - MVVM, Combine, SnapKit, Snapshot/UI/Unit Tests course!

In this course, I share my learnings as a professional iOS developer with 6 years experience on the topics that are relevant to the industry today. The materials I've prepared are knowledge that I wish I knew as a 3 year old developer struggling with concepts like:

  • Protocol orientated programming

  • Reactive programming

  • MVVM architecture (why not MVC?)

  • Coding views programatically with SnapKit (without Storyboards)

  • Writing unit tests

  • Writing Snapshot tests

  • Writing UI tests

In this course, I explain and implement the above-mentioned concepts through a simple Tip Calculator application step by step. I start off by building the UI, then the ViewModel which house the business logic and finally implement the various tests to ensure that we preserve the integrity of our code.

These concepts are extremely important to a senior iOS developer because of the expectations and responsibilities placed on you by the various stakeholders in your company. As such, you need the SKILLS to

  • Debug issues quickly

  • Upkeep code coverage and testability to ensure CI passes

  • Set an example to junior members in your team with high quality coding standards

  • Avoid on-call nightmares (paper duty ringing non-stop)

  • Fix and stop adding new tech debts

  • Maintain your sanity as your app grows over time

So this course targets developers who have been working for around 3 years who want to get to the next level. I am confident you will grow after completing this course.

Watch Online

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 37 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Setup Project

All Course Lessons (37)

#Lesson TitleDurationAccess
1
Setup Project Demo
06:52
2
Setup Root Programatically
02:04
3
Create High Level Components With Layout
12:29
4
Add Theme Constants
07:28
5
Add Logo View Details
12:07
6
Add Result View
13:25
7
Add Amount View
09:11
8
Add Bill Input View Details
14:32
9
Add Header View Details
05:27
10
Add Tip Input View Details
14:26
11
Add Split Input View Details
08:51
12
Clean Up Views
01:13
13
Add View Model
09:33
14
Observe Bill Input View
08:48
15
Observe Tip Input View
07:48
16
Handle Custom Tip Button
07:02
17
Handle Custom Tip Button Selection State
06:21
18
Observe Split Input View
07:03
19
Compute Result In View Model
07:09
20
Display Result In Result View
05:50
21
Format Currency Values
03:16
22
Add Tap Gestures
07:28
23
Send Gesture Tap Publisher To VM
03:56
24
Add Sound Effect On LogoView Tap
06:40
25
Implement Calculator Reset
04:47
26
Setup Unit Tests
10:33
27
Add More Tests
05:08
28
Test Logo View Double Tap
07:28
29
Clean Up Test Code
01:27
30
Add Image Snapshot Tests
12:34
31
Add Snapshot Test With Custom Values
08:19
32
Add UI Tests
12:19
33
Add All Identifiers
05:52
34
Add All Screen Elements
10:38
35
Test Regular Tip Flow
06:17
36
Test Custom Tip Flow
04:36
37
Closing
01:05

Unlock unlimited learning

Get instant access to all 36 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

Mobile System Design

Mobile System Design

Sources: Tjeerd in ’t Veen
Stop getting stuck in a difficult codebase that's hard to modify. Learn how to keep a growing codebase nimble and easily adjustable so that you can focus on...
Ultimate SwiftUI Mock Interview AppStore

Ultimate SwiftUI Mock Interview AppStore

Sources: letsbuildthatapp
Ready to become a professional developer? After this course, you'll be ready for any type of interview. Prerequisites: Basic SwiftUI skills, Understanding of networking.
5 hours 11 minutes 38 seconds
Practical Swift Concurrency - The Video Course

Practical Swift Concurrency - The Video Course

Sources: donny wals
Explore 10 hours of content on Swift Concurrency. Enhance learning with video exercises complementing the Practical Swift Concurrency book. Ideal for visual
4 hours 45 minutes 41 seconds
Thinking in SwiftUI

Thinking in SwiftUI

Sources: objc.io
SwiftUI is radically different from UIKit. In this short book, we will help you build a mental model of how SwiftUI works. We explain the most important concepts in detail, and ...
4 hours 37 minutes 30 seconds
iOS 14 & Swift Chat Application Like Whatsapp Viber Telegram

iOS 14 & Swift Chat Application Like Whatsapp Viber Telegram

Sources: udemy
In iOS 14 & Swift Chat Application Like Whatsapp Viber Telegram, we are going to build a real-world iOS application. And when I say real world, I mean you can u
28 hours 4 minutes 10 seconds