Fastlane

I gave a presentation at Chicago’s Cocoaheads yesterday about Fastlane. It simplifies your dev and release workflows, whether you are part of a bigger organization or you are an indie developer. You can download the presentation here. I’ll write a nicer blog post about fastlane when I get more time. …

A Better Alternative to AFNetworking's setImageWithURL:

Any iOS developer that has been around for a while is familiar with AFNetworking and it’s amazing capabilities. There is one area where AFNetworking falls short though: UIImageView+AFNetworking.h’s setImageWithURL:. It does not allow for persisting images to a disk cache with zero configuration…after all, it’s mainly a networking library and not a image library. …

Singletons

One of the more influential patterns in software engineering is a Singleton. This topic covers how singletons were created in pre-modern Objective-C, how they’re created now using GCD, and ends with how to never have to write that code ever again. To read up more about the singleton pattern, I urge you to check Wikipedia (http://en.wikipedia.org/wiki/Singleton_pattern). …

Associated Objects

One main difference between a class and a category in Objective-C is that a class can store data by creating properties and instance variables, whereas a category cannot. This is only partially true, thanks to associated objects. #import <objc/runtime.h> Objective-C’s runtime has several great features, including associated objects. It contains several C functions that allow you to gain access to the lower level implementation of the language. These APIs should not be preferred if there is an ‘Objective-C way” to do it, especially because this can lead to a maintenance nightmare…so use it cautiously! One feature of the runtime functions...…