Review of Manning's "iPhone in Action" Book

By
On February 3, 2009

iphone-in-action.jpgiPhone in Action, by Christopher Allen and Shannon Appelcline, bills itself as an “introduction to Web and SDK development” for the iPhone. In print form it costs $39.99 direct from Manning (with free e-book) and in e-book only form it’s $24.99. If you’d rather brave Amazon.com, the print copy costs $26.39 at time of writing. Manning were kind enough to send me a copy of the book for review and after working through it, I knew it’d result in an interesting review..

The 30 Second Summary

A lot of information on developing both Web and SDK apps for the iPhone in a reasonably compact book (400 pages). Not suited for total novices, but well suited for existing programmers who want comprehensive coverage of the iPhone platform, the development of webapps, and the key concepts in developing native apps with the SDK along with examples. Can get confusing in places due to the pace and lack of “hand holding” but it’s an ultimately rewarding read for the eager developer. A solid effort but, again, not for complete novices.

Webapp Development++ – Turns out Safari really rocks!

iPhone in Action goes into a great level of detail about developing webapps for the iPhone. While there’s been a lot of focus on developing native apps using the SDK, the Safari/Web functionality provided by the iPhone has a strong set of features and you can develop some reasonably powerful applications using just JavaScript and HTML. iPhone in Action covers the topic almost exhaustively from setting up the viewport, dealing with chrome, and animation through to using WebKit’s integrated database functions and how to recognize gestures from JavaScript. I certainly didn’t realize how powerful the webapp-only functions were on the iPhone and this book is extremely illuminating in that regard.

Beyond the core functionality of Webkit, developing iPhone-specific Web UIs with the iUI library is also covered, and there’s an entire chapter dedicated to the use of the <canvas> element for drawing shapes and performing simple animations. There’s also a chapter on Dashcode, a tool that Apple originally wrote to enable users to develop OS X Dashboard widgets. To my surprise, Apple has now extended it to developing basic HTML and JavaScript powered iPhone apps, and iPhone in Action presents a broad overview of how this works.

Objective C: A hurried introduction, alas

It is not until chapter 9 – about a third of the way through the book – that we get to any “tough” stuff, with an introduction to the SDK and “C’s concepts.” Sadly, this chapter is woefully too short; a mere 9 pages that merely give the briefest of overviews about C, typing, memory management, messaging, and MVC. If you want to learn Objective C in a step by step fashion, you’ll need to buy another book (or even a screencast), although you could possibly “pick it up” from the examples in the remainder of the book.

Chapter 10 digs into getting the SDK installed and then presents a steadier introduction to Objective C. It’s a little fast paced for beginners though and after just several pages it’s claimed that “What we’ve covered so far should be sufficient for you to understand (and write) most simple Objective-C code.” It really isn’t, but if you have some familiarity with Objective C, this fast pace could be encouraging. While I wouldn’t dissuade a total Objective C newbie from buying this book, I’d definitely recommend they become familiar with Objective C some other way first before using this book to get up to speed with the iPhone’s use of it.

Building an iPhone application for real

In Chapter 11, we’re introduced to Xcode and quickly thrown into building our first iPhone application. This is presented very well, and while the app is merely a single line of text on an otherwise blank screen, the underlying code is very simple, well explained and it’s a great feeling to finally have an app up and running.

This section of the book moves really well. It’s fast paced but you’re developing a number of small iPhone applications in no time. Typing out the code by hand really helps with the learning experience (yes, I did it!) and even though the explanations in the book are a little terse, they’re just complete enough to get a feel for what’s going on (again, assuming you have a basic understanding of Objective C – if not, some of the references to “synthesize” and “property” will feel weird given the book’s brief introduction to these topics).

WIthout going into a chapter by chapter walkthrough of the remainder of the book, I’ll say that it does a reasonable job at quickly walking you through the key topics you’ll need to understand to move on as an iPhone developer without dwelling too long on any one thing, making it a solid “walkthrough” type book. iPhone in Action is a good book for existing developers who want to become familiar with iPhone development.

iPhone in Action never treats you like a novice (which, if you are a novice, is a negative point) but tries to get you into developing iPhone applications as quickly as possible and gives you just enough ammunition to make you feel like you’re getting somewhere. I found it a little hard going in places because a lot of details are skimmed over, but ultimately this can help you learn the material in a more practical way as long as you’re willing to keep researching and re-reading.

Pros:

  • Strongest coverage of webapp and Webkit-specific iPhone development I’ve seen so far.
  • Solid introduction to SDK / Objective C based iPhone development for existing developers familiar with object orientation.
  • A no-nonsense approach.

Cons:

  • Hurried and shallow coverage of Objective C and some of its underlying concepts.
  • Definitely not for non-coders (though the introduction does warn of this).

Info

Publisher: Manning
Official Site: Manning : iPhone in Action
Authors: Christopher Allen and Shannon Appelcline
ISBN-13: 978-1933988863
RRP: $39.99 (includes e-book)
Amazon: Click here to check out the book on Amazon.com – current price $26.39.

0 responses to “Review of Manning's "iPhone in Action" Book”

  1. Good review, I probably wouldn’t have picked this book up were I to handle it in the store, but after thinking about it and reading this review it does make a lot of sense. Some portions of my native apps could just shell out to iPhone enhanced sites – like the Google app for iPhone – and be far easier to maintain.

  2. Simone says:

    I bought this book last month: I completely skipped over the “web development” part of it since I was interested in learning how to develop native apps.
    I’ve to agree with you: I’m an experienced .NET developer but it was my first time on Objective-C. Going back to alloc and release from having lived in a “managed” world since 8 year seems a bit harsh. And I wish it covered that part more in detail, together with all the basic construct of Objective-C.

    Also, being new to the Mac development stack, I didn’t know anything about the Interface Builder, and still now, after reading everything, I still have to understand how it works.

    As for the iPhone UIKit, it does give an overview of all the main building blocks, but it doesn’t build the knowledge of the reader: it just covers quickly the concepts and gives them for granted in the following chapters. And if it’s the first time you read about such things, you probably needed more time to get to accustomed to the concepts. Also there are not many step-by-step tutorials on how to build a real application from scratch. I really would have liked that as case study or similar appendix at the end of the book.

  3. Peter Cooper says:

    Thanks for the comments guys. I totally agree with you, Simone. The great thing is that authors can use information like this to refine their books or when writing new ones 🙂 I have personally found screencasts to work well for the step-by-step stuff, although Dan (the other MO poster) is looking at other iPhone books and should be presenting a roundup here soon.