Skip to main content
CourseFlix

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

4h 40m 2s
English
Paid

This course helps you learn core iOS skills that you will use in real projects. You will see how each idea works and why it matters. The goal is to help you build clear code that you can trust.

What You Will Learn

You will work with tools and patterns that many teams use today. You will see how they fit together in one project.

  • Protocol oriented programming
  • Reactive programming with Combine
  • MVVM and why teams use it instead of MVC
  • Building views with SnapKit
  • Unit tests
  • Snapshot tests
  • UI tests

How You Will Learn

You will build a small Tip Calculator app from start to finish. This helps you see each idea in action. You start with the UI, then build the ViewModel, and then write tests to check your work.

The goal is to help you write code that is clear, simple, and safe to change.

Why These Skills Matter

Teams expect you to write code that is easy to read and test. These skills help you fix bugs faster and avoid broken builds.

  • Debug issues with confidence
  • Keep code coverage high so CI runs clean
  • Set a strong example for junior devs
  • Avoid stressful on-call work
  • Reduce and prevent tech debt
  • Keep control as your app grows

Who This Course Is For

This course is for iOS developers with about three years of experience. You know the basics and now want to grow into a stronger, more trusted team member. Each lesson shows clear steps you can use in your work right away.

About the Author: Udemy

Udemy thumbnail

Udemy is the largest open marketplace for online courses on the internet. Founded in 2010 by Eren Bali, Oktay Caglar, and Gagan Biyani and headquartered in San Francisco, the company went public on the Nasdaq in 2021 under the ticker UDMY. The platform hosts well over two hundred thousand courses across software development, IT and cloud, data science, design, business, marketing, and creative skills, taught by tens of thousands of independent instructors. Roughly seventy million learners use it worldwide, and the corporate arm — Udemy Business — supplies a curated subset of that catalog to enterprise customers.

Because Udemy is a marketplace rather than a single editorial publisher, the catalog is uneven by design. The strongest material lives in the long-form, project-based courses authored by working engineers — full-stack JavaScript, React, Node.js, Python data science, AWS, Docker and Kubernetes, mobile development with Flutter and React Native, and cloud certification preparation. The CourseFlix listing under this source is the slice of that catalog that has been mirrored here for offline-friendly viewing, organized by topic and updated as new releases land. Pricing on Udemy itself swings dramatically with the site's near-permanent sales, which is why the platform is best treated as a deep reference catalog: pick instructors with strong reviews and a track record of updating their material rather than buying on the headline price alone.

Watch Online 37 lessons

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

Course content

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

Related courses

  • iOS Dev Tooling thumbnail

    iOS Dev Tooling

    Sources: Essential Developer
    This course covers the key aspects of tools and processes used in the professional development of iOS applications. You will learn how to effectively...
    16 hours 46 minutes 25 seconds
  • Learn And Code With Enid thumbnail

    Learn And Code With Enid

    Sources: Learn and Code with Enid
    With LACWE, you will learn about Swift, SwiftUI, UIKit, Xcode, design, and other topics with visual graphics. Most of LACWE’s content is organized in series, so
  • Practical Swift Concurrency - The Video Course thumbnail

    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

Frequently asked questions

What is iOS & Swift - MVVM, Combine, SnapKit, Snapshot/UI/Unit Tests about?
This course helps you learn core iOS skills that you will use in real projects. You will see how each idea works and why it matters. The goal is to help you build clear code that you can trust. What You Will Learn You will work with tools…
Who teaches iOS & Swift - MVVM, Combine, SnapKit, Snapshot/UI/Unit Tests?
iOS & Swift - MVVM, Combine, SnapKit, Snapshot/UI/Unit Tests is taught by Udemy. You can find more courses by this instructor on the corresponding source page.
How long is iOS & Swift - MVVM, Combine, SnapKit, Snapshot/UI/Unit Tests?
iOS & Swift - MVVM, Combine, SnapKit, Snapshot/UI/Unit Tests contains 37 lessons with a total runtime of 4 hours 40 minutes. All lessons are available to watch online at your own pace.
Is iOS & Swift - MVVM, Combine, SnapKit, Snapshot/UI/Unit Tests free to watch?
iOS & Swift - MVVM, Combine, SnapKit, Snapshot/UI/Unit Tests is part of CourseFlix's premium catalog. A CourseFlix subscription unlocks the full video player; the course description, table of contents, and preview information are available to everyone.
Where can I watch iOS & Swift - MVVM, Combine, SnapKit, Snapshot/UI/Unit Tests online?
iOS & Swift - MVVM, Combine, SnapKit, Snapshot/UI/Unit Tests is available to watch online on CourseFlix at https://courseflix.net/course/ios-swift-mvvm-combine-snapkit-snapshot-ui-unit-tests. The page hosts every lesson with the integrated video player; no download is required.