The root view controller is currently in charge of fetching weather data from the Dark Sky API. Having a view controller that performs network requests isn't uncommon if the project adopts the Model-View-Controller pattern. The current implementation of the RootViewController
class isn't complicated, but that can change as the project grows and evolves. It can eventually lead to a fat and overweight view controller. That's something we absolutely want to avoid.
Subscribe to Cocoacasts Plus to watch this episode.
Building a Weather Application From Scratch
Creating a View Model
by Bart Jacobs in Swift
Swift 4
Xcode 9
iOS 11
Building a Weather Application From Scratch
-
03:30
-
07:15
-
12:08
-
05:59
-
07:54
-
6 Creating a View Model
13:09
-
13:56
-
12 Organizing Fonts and Colors
06:45
-
13 Implementing the Day View Model
15:55
-
15 Implementing the Week View Model
12:37
-
20 Efficiently Refreshing Weather Data
08:48
-
09:40
-
22 Unit Testing With Mock Objects
10:49
-
23 Unit Testing Asynchronous Code
06:40
-
08:28
-
25 Exposing Gaps in the Test Suite
04:00