"What do I need to get started?" This is the question we get most often from readers regarding iPhone development. The answer is pretty simple: an Intel-based Mac computer (PowerPC CPU is not supported by the SDK), the iPhone development environment (FREE from Apple), and a few good "introduction to iPhone programming" books. We have looked at a few programming books in the past, some of which were written before Apple had released the iPhone SDK. These were useful when there was no "official" development platform from Cupertino and you had to jailbreak the iPhone to do any programming for it. With the release of the official iPhone SDK, though, these older books are out-of-date, but can still be illuminating. We thumb through them every once in a while to remind ourselves how much easier it is programming with Xcode and the iPhone SDK!
When we think "programming books," the name O'Reilly usually comes to mind. This may be because O'Reilly has been a publisher of technology-related books for as long as we can remember. It may also be because of the iconic covers of their books. Whatever the reason, we find most of the iPhone programming books in our collection are from O'Reilly. The basic ones (Allan, Hockenberry) cover the fundamentals of how to get started, from setting up the Xcode development enviroment to applying for admission to Apple's App Store. However, by necessity, none of the books can go too deeply into any one of the dozens of possible iPhone programming subtopics. Fortunately, we are starting to see more and more books on advanced iPhone topics being published.
Graphics on the Mac has been one of its strong points since the the early days. The iPhone's support for the OpenGL standard continues the tradition. Philip Rideout has written a book on how to do 3D graphics on the iPhone using the OpenGL standard. While you do not have to be a graphics expert to find the book useful, seeing a 4D-matrix transform should not freak you out either.
Any discussion of 3D graphics natually flows into game development. Many were skeptical of the iPhone ever being a viable gaming platform. That skepticism turned out to be completely wrong. The iPhone, with its multi-touch screen, accelerometer, and high resolution display has proven itself to be an awesome gaming platform. Paul Zirkle (Konami) and Joe Hogue (Electronic Arts) have teamed up and written a book on how to design and develop games specifically for the iPhone. This is an intermediate level programming book suitable for developers with strong fundamentals in iPhone programming who are looking for an introduction to game development for the iPhone.
Some of these books will get readers started in iPhone programming, others will round out the introduction with more in-depth knowledge. We will have more to say about these books as we get deeper into them. Undoubtedly there will be many other excellent iPhone and iPad programming books coming out in the future. When we come across others which we find to be helpful, and we will, we'll be sure to let you know. However, the only way to get hands-on knowledge is to write code. The best way to do that is to see how others have done it. Apple has a great collection of sample code in its iPhone Dev Center. Go and check it out.
We expect to focus our development energies exclusively on the iPhone for the next few years. If you would like to follow the progress of our iPhone programming journey, check out the RainyDayEngineering section from time to time. We try to update it at least once a week with something iPhone/iPad related. If you have a question or request, feel free to drop Milo (our newest RainyDayIntern) a note. He is pretty good about answering his emails. [Permalink] - iPhone programming books