Tuesday, June 30, 2009

Beginning iPhone 3 Development

Well, I guess it's okay to talk about this since it's on Amazon, Dave and I have completely updated and revised Beginning iPhone Development for the 3.0 SDK.



Now, the question some people likely have is, "should I buy the new version." Let me be honest with you: For many of you the answer is definitely "no". While Dave and I certainly would appreciate you buying the new edition, there's not a lot of truly new material, and we don't want anyone buying the book under false pretenses. We've incorporated the errata and clarified some of the conceptual material based on feedback from readers and on having had another year of working with the iPhone SDK. We have also tweaked the code to match Apple's current coding style (moving the IBOutlet keyword to the property, for example), and in several cases modified the code to use SDK 3 features, such as using the faster single-step autorotation instead of the old 2-step autorotation.

But, as far as completely new material, we don't include much. There's really only some discussion of table view cell styles and, in the persistence chapter, a new introduction to Core Data. Table view styles are cool, but they're easy enough to understand and certainly don't justify a new purchase for readers who have mastered table views already.

Core Data is probably something a lot of you are interested in, but the coverage in Beginning iPhone 3 Development is pretty introductory-level. We took that same persistence application that we wrote using archiving, property lists, and SQLite, and re-wrote it one more time using Core Data. The application is simple enough that we really don't cover most of the more difficult aspects of Core Data, (but hold that thought).

I don't want to discourage you from buying the revised book, but Dave and I both feel strongly that we don't want readers to feel duped into buying it and unfortunately, the description of the book on Amazon right now is incorrect. The way publishing works is that publishers often put new book descriptions into the computer system that Amazon pulls from long before the book is actually available, sort of as a placeholder. In fact, sometimes publishers put the description into the system before the book is even written. The description now on Amazon for Beginning iPhone 3 Development is still a holdover from that placeholder and talks about some material that is not actually being covered in the updated book, like in-app purchase, push notifications, and mapkit. Unfortunately, we have to wait for the corrected description to ripple through the various computer systems until it shows up on Amazon.

But...

Dave and I do have another project in the works that does cover Core Data in much more detail - several chapters in fact. It also covers many of the new SDK 3.0 features like GameKit, MapKit, Push Notifications, and In-App Purchase in great detail. Plus, we cover some more intermediate and advanced topics such as networking and concurrency. The new book has not officially been announced, but the title of the book will be More iPhone 3 Development. We don't have an availability date yet, but we are furiously working on the book as we speak and will get it done as quickly as we can without cutting any corners.

The reason we have decided not to cover many of the new 3.0 APIs in the updated version of Beginning iPhone Development is precisely because we didn't want people to feel like they had to buy a book they already owned in order to get the new material. We felt that the persistence chapter needed to mention Core Data, but otherwise, we wanted to put all the new material in a second book to avoid forcing people to buy the first book again. At the same time, we felt that the release of the new SDK warranted an update to the first book so that new readers wouldn't be confused by the differences. It also gave us a chance to incorporate errata and clean up a few things.

I hope that's all clear, and I apologize for any confusion the Amazon description may have caused.

No comments:

Post a Comment