Autoplay
Autocomplete
Previous Lesson
Complete and Continue
MVVM Design Pattern in iOS Using Swift for UIKit Apps
Introduction
Private Slack Channel & Newsletter
Quarterly Live Q&A Sessions
Where did you hear about this course?
Refer a friend program
What is MVVM Design Pattern?
What are Design Patterns? (1:12)
What is MVVM? (2:41)
Why MVVM? (2:32)
MVVM Architecture and Web APIs (1:42)
Understanding the Structure of GoodWeather App
What you will be building? (2:00)
Understanding Weather List Screen (1:42)
Understanding Add Weather Screen (1:12)
Understanding Settings Screen (5:11)
Implementing User Interface for GoodWeather App
Setting Up View Controllers (9:21)
Configuring Theme for Our App (13:15)
Displaying Hard-Coded Weather into TableView (14:59)
Designing the AddWeather Screen (5:49)
Implementing Web Services Layer
OpenWeatherMap API (7:25)
Implementing WebService Service (7:32)
Testing the Webservice Class (9:05)
Building ViewModels and Populating View Models
Implementing Models (4:08)
Decoding JSON into Models (4:50)
Implementing AddWeatherViewModel (10:06)
Passing WeatherViewModel back to the WeatherListTableViewController (14:34)
Displaying Weather on Screen (7:37)
Settings Screen to Change Temperature Unit
Understanding the Starter Project (1:54)
Implementing SettingsViewModel (5:45)
Displaying Temperature Units on Settings Screen (3:46)
Selecting and Deselecting a Temperature Unit (6:13)
Implementing SettingsDelegate (6:45)
Switching Between Temperature Units (10:44)
Fixing the Temperature Unit Issue (2:32)
Bindings
What are bindings? (3:05)
View to ViewModel Binding (14:28)
ViewModel to View Binding (14:16)
Unit Testing
What is Unit Testing? (5:27)
Setting Up Your Project (4:01)
Writing Your First Unit Test (8:27)
Refactoring Unit Tests (5:33)
Unit Testing View Models
Setting Up the Project for Unit Testing (3:04)
Writing Unit Tests for SettingViewModel (12:25)
Writing Unit Tests for WeatherListViewModel (9:46)
Conclusion
Next Steps (0:40)
Earn with us
Teach online with
Configuring Theme for Our App
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock