P1.0 (Printing) - 14 November 2012

First printing.

B8.0 - 18 October 2012

This is the final beta, post-production. Now it’s on to layout and then the printer.

B7.0 - 22 September 2012

As promised, we’ve updated the book for iOS 6, which is now available to the public and no longer under NDA. Among the big changes:

  • iPhone 5! iPhone 5! More pixels! More problems! Now that iPhone and iPod touch devices have potentially different dimensions, we cover the Auto Layout feature of iOS 6 and Xcode 4.5, which allows us to build GUIs that will grow and shrink to adapt to different display spaces.
  • As a result of this, we’ve rewritten every example in the book to be iPhone 5 compatible. We’ve also updated the information about submitting to the App Store—if an app is iPhone 5-compatible, it must include iPhone 5-size screenshots.
  • A new Social Framework supplants the iOS 5 Twitter Framework, adding support for Facebook and other social networking services. We’ve rewritten the Twitter example in the first three chapters to use the new framework. We’ve also added a “Joe Asks” sidebar about dealing with changes that Twitter has announced about how its web API can be used in the future.
  • The latest version of Objective-C introduces a number of helpful shortcuts for creating properties (the @synthesize statement is now optional) and collections (goodbye, arrayWithObjects:). These new conventions are used whenever possible throughout the book.

B6.0 - 09 July 2012

With Apple’s announcement of iOS 6, we’re going to take a little time to update this book’s material so it’s up-to-date. Unfortunately we’ll have to wait until Apple makes iOS 6 available to the public to make those changes available to you, but in the meantime we’re releasing an update to the book that fixes all the outstanding errata. When iOS 6 is released, you’ll automatically get all of the updates to this book.

B5.0 - 02 May 2012

The book is now complete and ready for indexing and copyedit.

B4.0 - 10 April 2012

This beta incorporates the final chapter, Chapter 10, The App Store and Beyond. In a broader sense, this chapter is all about “programming like a grown-up,” with putting our app on the store as just one part of a professional publishing process. We start by taking better care of our code via source control, employing Xcode’s support for Git and Subversion. Next, we get our code running on real devices, testing it on our own iPhones and iPads connected to Xcode, and beta tester devices, which we reach via “Ad Hoc Distribution.” With the code tested, we’re ready to work through the twisty app submission process, which ends with our app going out to users around the world. But we’re still not done! We can use iTunes Connect to collect crash reports from users and, via Xcode, figure out what’s happening to our app out in the field.

B3.0 - 27 February 2012

This edition adds a new chapter, Chapter 9, Testing and Fixing Apps, which is all about using Xcode’s tools not so much to create apps, but to fix them when they break and to keep them working. We’ll look at two testing frameworks: one for verifying the logic of our recipes app, and another that lets us write scripts to exercise the user interface. We’ll also use the debugger to set breakpoints and inspect our code’s behavior at runtime, and explore the performance-profiling features of the Instruments application.

The other big news in this edition is that it’s updated for Xcode 4.3, released on February 16th. This version of Apple’s development tools makes a radical change by arriving in the form of a single double-clickable application, rather than an installer. We’ve updated the Getting Started guidance in Section 1.1, Tooling Up, to match Xcode’s new behavior, and made updates throughout the text to match Xcode 4.3’s new behaviors.

B2.0 - 10 January 2012

This edition introduces two new chapters: Chapter 7, Documents and iCloud, where you’ll learn how easy it is to save and load files, and Chapter 8, Drawing and Animating, where we’ll add some eye candy to our app. We’ve also fixed all of the open errata. Thanks for reading, and please keep the feedback coming!

B1.0 - 13 December 2011

First Beta.