Beginning iPhone Development: Exploring the iPhone SDK

Alex SikoraJul 02, 2009

Clear Examples and Well-Choosen Images

Beginning iPhone Development advertises itself as “A complete course in iPhone and iPod touch programming” and I think it fulfills its promise. Dave Mark and Jeff LaMarche have plenty of experience and it shows in this book. There aren’t very many iPhone books out yet, as Apple continues to release updates to its SDK, but this is the best one of the group. The book is easy to understand and covers all the topics a beginning iPhone developer would need to know. From clear examples to well-chosen example images, this book covers iPhone development well.

The book’s teaching method is very well made for beginners. While those new to programming in general may have minor issues, it’s not designed to teach the beginner programmer, but anyone who is trying to learn iPhone development will have an easy time with this book. It covers user interface design, accelerometer programming, Quartz and OpenGL drawing – the chapters follow each other in a logical order.

A welcomed feature of this book is its final chapter. It covers where a developer can go from there. It talks about the Apple Developer Documentation and other websites to go for help. The authors even offer their own email addresses for iPhone developers who get really stuck — this last point is just a nice addition.

The Content

Beginning iPhone Development covers a lot, but it doesn’t seem overwhelming. The authors go from subject to subject in a manner that makes sense, and when it can, builds on former knowledge learned in the book. The projects are educational, if not the most interesting ever, but they give the reader an idea of what can be done with this technology. The authors always explain everything in a great amount of detail, not in a dull manner, but in a way that just educates those who already didn’t know, but keeps the pace moving for those that did. This book also acts well as a reference book, you can jump to a section and read up just on that subject to refresh your memory.

Furthermore, as opposed to some books, these authors cover Interface Builder (the tool to design your interfaces) in depth. They know a lot of the tricks and lead you away from the pitfalls. Even predicting where you might go wrong and correcting you, right there in the text. Their coverage of Table Views, one of the most important part of most iPhone apps (though not usually games), is very well done. You get a clean understanding of how all the code goes together, what the Table View Delegate is, and how to supply data to a table view. These chapters are excellent, and really get the reader firmly adjusted to table view programming.

The last part of the book is generally a bit less detailed than the two chapters on Table View programming, but they get you started in the right direction for whatever topic you’re reading and gives you a base to work off of.

Keeping Up with iPhone SDK

This book does have its issues. First of all, it has unfortunately already become mildly outdated. Note the mildly. The release of the iPhone 3.0 SDK brings hundreds of new APIs and functionality to the iPhone, however, that’s not to say this book should not be purchased. Everything learned from this book still applies in the new iPhone SDK and it covers all the basic features of the SDK that any beginner needs to know. With this book under your belt, you can easily maneuver Apple’s developer documentation for the new APIs. It doesn’t cover the other developer tools Apple includes, such as Shark — there is only so much you can fit into one book.

Conclusion

All in all, I’d recommend this book to anyone who is, as the title says, Beginning iPhone Development. It’s clear and concise, and has helpful tips for all newcomers. You’ll start right where you need to start, and learn a lot along the way. It doesn’t read like a boring textbook, so you’ll stay interested during the entire read.

Chapter List:

  1. Welcome to the Jungle
  2. Appeasing the Tiki Gods
  3. Handling Basic Interaction
  4. More User Interface Fun
  5. Autorotation and Autosizing
  6. Multiview Applications
  7. Tab Bars and Pickers
  8. Introduction to Table Views
  9. Navigation Controllers and Table Views
  10. Application Settings and User Defaults
  11. Basic Data Persistence
  12. Drawing with Quartz and OpenGL
  13. Taps, Touches, and Gestures
  14. Where Am I? Finding Your Way with Core Location
  15. Whee!
  16. iPhone Camera and Photo Library
  17. Application Localization
  18. Where to Next?