Using Software Design Patterns in iOS

The Powerpoint slides and example code are attached below.
Download the MS Powerpoint slides
Download the example code
View a video of the presentation (April 26, 2012 at Conde Nast, NYC)

Designing software architecture is usually the first step in the implementation process. This presentation steps through several important design patterns with examples of how they are used.

Here are some of the patterns that are presented:
- Singleton
- Decorator
- Iterator
- Proxy
- Facade
- Abstract Factory
- Factory Method
- Object Pool (UITableViewCell: prepareForReuse and dequeueCell)- Lazy Initialization
- Lazy Initialization
- Data Hub
- Blackboard (Facade over NSNotificationCenter)
- State

To demonstrate these patterns, some interesting examples are used:
- Generating a PDF using Core Graphics in iOS
- Fast Enumeration, blocks and Encapsulation
- Inheritance and Polymorphism
- UIWebView layers and using delegation and the main thread
David Shane,
Apr 26, 2012, 7:40 PM
David Shane,
Apr 26, 2012, 3:11 PM