Swift learning: writing a POC canonical Swift app

I'm taking some time off to rearrange my 4+ years of Obj-C knowledge into a Swift-shaped skillset instead. Retooling. There's some other things I want to try too (CloudKit, rspec-style testing with Quick), so this is a good chance to check them out.

Before I take on my next project, I want to have built a canonical POC Swift app which contains many of the usual features of an app and utilises the following implementation features:

  • showing basic data (e.g. a List) in a TableView
  • data is persisted in Core Data
  • data is shown with a FetchedResultsController
  • data is editable
  • UITableViewCell containing a textField
  • MVVM used

  • Unit tests written with Quick & Nimble

  • Convert to Swift 2.0

Once it's converted to Swift 2, then:

  • Xcode 7 User Interface tests written (Swift 2)

The app will be my "best practise" reference going forward, and should basically stay up to date with my own experience.