Skip to content

Latest commit

 

History

History
34 lines (23 loc) · 1.83 KB

README.md

File metadata and controls

34 lines (23 loc) · 1.83 KB

Unbox and Alamofire in Swift 3

Project dependencies and setup

  • Xcode 8
  • Swift 3
  • ————
  • Alamofire (HTTP networking lib)
  • Unbox (Swift JSON decoder)
  • UnboxedAlamofire (Custom Response Serializer for Unbox)
  • AlamofireImage (Image response serializer for Alamofire)
  • SnapKit (Swift Autolayout DSL)
  • —————
  • Git git clone [email protected]:salomoko/InspiratoSearchExercise.git
  • Cocoapods (1.1.1) - pod install

Inspirato Coding Exercise

This basic example came from a coding exercise I did while interviewing for an iOS Developer position at Inspirato

The reason I made this exercise a public repo is not to provide other candidates that may not be qualified a solution, but rather to provide an example of using Unbox with Alamofire in Swift 3! Plus I had fun doing it!

IMO I think this is a very simple/clean solution to a very common task iOS developers face regularly. The serialization is handled very nicely as property types are automatically detected and decoded. All missing or mismatched values are gracefully handled through a single exception type, making error handling super simple! Your models aren't saturated with optional properties, that you later have to unwrap, guard or add more LOC at some point. And best of all its a light weight solution that you can use with your protocol oriented swift apps!


This example is simply meant to critique and/or get ideas off of. I ended up NOT receiving an offer from them, stating something along the lines of your code was very elegant and clean but it didn't touch on the areas they were looking for. Whatever that means, I'm assuming because I failed to implement AutoLayout on a couple screens, simply spaced it!