Upgrade to Pro — share decks privately, control downloads, hide ads and more …

MVVM: An iOS Journey

MVVM: An iOS Journey

Slides from my talk @ Beer City Code in Grand Rapids, MI June 2017

Avatar for Kim Arnett

Kim Arnett

June 09, 2017
Tweet

More Decks by Kim Arnett

Other Decks in Technology

Transcript

  1. MVVM: An iOS Journey Problem: Testing is a bear. Files

    continue to be massive. Hacks for testing feel terrible. Dependency injection?
  2. MVVM: An iOS Journey Swift gave Obj-C programmers an appreciation

    for cleaner solutions. 
 [[[[[you know] what] im] talking] about]
  3. MVC: Model View Controller
 (recommended by Apple) Model Controller View

    UIView UIViewController
 • Logic • Network Calls Data Models
  4. Unit Testing VS UI Testing Unit Testing is for Logic

    & Business Requirements UI Testing* is to make sure views exist & can be navigated
 
 *Important to set Accessibility labels
  5. MVVM: Model View ViewModel Model ViewModel View UIViewController
 UIView Logic


    Network Calls Data Models Unit Testing with
 Mock Data
  6. MVVM: An iOS Journey Cleaner Code Better Performance & Less

    Hack-y Easier Maintainability Open for Testing