Programming iOS 5 by Matt Neuburg


Summary: Updated to reflect recent changes in iOS

This book is simply a new release of “Programming iOS 4”. It contains lots of new information you won’t find in previous release – mostly related to most recent changes in iOS 5. One of these features are story boards. Basically, whenever story boards are applicable, you will read how to apply them. ARC related memory management is another new feature, and, it is well described here. If you haven’t used it yet you will learn how to work with ARC in both situations – when you develop old application and want to migrate to ARC and how to work with ARC in applications developed from the scratch. New concepts like @autoreleasepool blocks, weak references, retain cycles are also explained. Sections related to notifications, startup process and life time have improved. Comparing to previous edition, section “Swamped by Events” was rewritten and redesigned. In my opinion it is now easier to follow and easier to understand. The same refers to view controllers related part. Basically, the book targets recent XCode release and iOS 5 and addresses some composition/content related drawbacks you can find in previous release. Big plus goes for mentioning Instruments. However, this section is way too short. It covers only simple use-cases. Still, it’s better than nothing.

When it comes to drawbacks. In my opinion there are two frameworks that are missing – CoreData and SQLite. You won’t find anything about these in here. I think that book would be much better if it covered database storage related aspects. At least at introductory level.

If you own “Programming iOS 4” already, I’d skip this “upgrade”. In case you haven’t developed for iOS yet, this one is really good introduction to iOS development.

Product page:

O’Reilly: http://shop.oreilly.com/product/0636920023562.do
Amazon (in Books): Programming iOS 5: Fundamentals of iPhone, iPad, and iPod touch Development
Amazon (Kindle): Programming iOS 5: Fundamentals of iPhone, iPad, and iPod touch Development