Saturday, August 31, 2013

TDD Resources for iOS

Below are a couple of resources I've found useful when doing TDD in iOS. 

  • Test-Driven iOS Development -  the only TDD book specific to iOS. It goes over implementing a fully functional iOS app using TDD, from the data layer all the way to the UI.
  • Working Effectively with Legacy Code - although not specifically geared towards iOS, this book is the authority on how to work with untested code (legacy code), how to safely make changes to it, all by applying TDD. 
  • OCUnit (SenTestingKit) / XCTest - testing unit frameworks built directly into Xcode. 
  • OCMock - objective-c implementation of mock objects. Provides features such as class mocks, stubs, protocol mocks, expect/verify, and many more. 
  • OCHamcrest, OCMockitoKiwi, GHUnit, Cedar - other unit testing tools that you might find useful.  
  • CoverStory / lcov - code coverage of your unit tests. 
Other Resources:

Sunday, August 18, 2013

A couple of short link - August 18, 2013

  1. 75 Essential Tools for iOS Developers - the list is categorized based on Inspiration, Design, Source Control, Dissecting Apps, Editors, Documentation, Dependency Management, Diagnostics & Debugging, Images, Core Data, Back-end Services, Analytics, Deployment, Testing, Demos / Marketing, App Sales Reporting. 
  2. Apple allowing up to 200 test devices per iOS Developer account - keep in mind that some developers have not yet seen this change on their accounts (myself included).
  3. The idea behind Uber (which connects drivers with riders) has spread to other services such as
    • laundry (through Prim), 
    • to-dos such as grocery shopping, furniture assembly, etc (through TaskRabbit),
    • house cleaning (through Exec), 
    • dog walking (through Swifto),
    • flower delivery (through Bloom That).
  4. Google's "20% time" is rumored to be dead - this is a shame really, as having one day a week to spend on something that is outside of your job description can bring a lot of satisfaction and value.
  5. Objective-C Coding Style by NYTimes - an extensive guide that outlines the coding conventions adopted by the Developers at NYTimes. There are a few of other coding conventions that they link to at the end of the page.