Certain technologies bring out everyone's hidden geek, and iPhone did the moment it was released. Even though Apple created iPhone as a closed device, tens of thousands of developers bought them with the express purpose of designing and running third-party software.
In this clear and concise book, veteran hacker Jonathan Zdziarski -- one of the original hackers of the iPhone -- explains the iPhone's native environment and how you can build software for this device using its Objective-C, C, and C++ development frameworks.
iPhone Open Application Development walks you through the iPhone's native development environment, offers an overview of the Objective-C language you'll use with it, and supplies background for the iPhone operating system. You also get detailed recipes and working examples for everyone's favorite iPhone features -- graphics and audio programming, interfaces for adding multitouch functionality to games, the use of hardware sensors, and the device's vast user interface kit.
This book explains:
How to access the iPhone's underlying operating system
The makeup of an iPhone application
How to get the open source tool chain running on your desktop
The iPhone's core user interface framework, which is heavily tied to major application-level functions
Using the many touted iPhone features such as multitouch, hardware sensors, and gestures
Intercepting and handling event notifications for many iPhone-related events
Raw video surfaces and 3D transformations that take you deeper into advanced graphics on the iPhone
How to record and play simple sounds and intercept sound events
Advanced digital audio output using Apple's new Audio Toolbox framework
Advanced user interface components such as section lists, keyboards, and image manipulation
The Appendix includes a compendium of miscellaneous code examples for cool application features, such as using the camera and creating a CoverFlow®-like album browser.
This book is a true hacker's book, designed for the millions of users who have run third party applications on their iPhone, but its concepts and code examples have shown to be remarkably similar to Apple's official SDK, making this book a valuable resource for both camps. Any programmer can use this book to write applications with the same spectacular effects that made the device an immediate hit, and impress users just as much as the official iPhone software does. That programmer can easily be you.
Chapter 1 Breaking Into and Setting Up the iPhone
Installing BSD Subsystem
Chapter 2 Getting Started with Applications
Anatomy of an Application
Building the Free Tool Chain
Building and Installing Applications
Integrating with XCode
Transitioning to Objective-C
Chapter 3 Introduction to UIKit
Basic User Interface Elements
Windows and Views
The Most Useless Application Ever
Deriving from UIView
The Second Most Useless Application Ever
Status Bar Manipulation
Chapter 4 Event Handling and Graphics Services
Introduction to Geometric Structures
Introduction to GSEvent
Example: The Icon Shuffle
Chapter 5 Advanced Graphics Programming with Core Surface and Layer Kit
Chapter 6 Making Some Noise
Core Audio: It's Great, but You Can't Use It
Chapter 7 Advanced UIKit Design
UIProgressBar: When Spinny Things Are Tacky
Progress HUDs: When It's Important Enough to Block Stuff
Jonathan Zdziarski is better known as the hacker "NerveGas" in the iPhone development community. He is well known for his work in cracking the iPhone and lead the effort to port the first open source applications. Hailed on many geek news sites for his accomplishments, Jonathan is best known for the first application to illustrate and take full advantage of the major iPhone APIs: NES.app, a portable Nintendo Entertainment System emulator.
Jonathan is also a full-time research scientist and longtimespam-fighter. He is founder of the DSPAM project, a high profile, next-generation spam filter that was acquired in 2006 by a company designing software accelerators. He lectures widely on the topic of spam and is a foremost researcher in the fields of machine-learning and algorithmic theory.
The animal on the cover of iPhone Open Application Development is a Pardine lynx, an animal more commonly known today as the Iberian or Spanish lynx (Lynx pardinus). Once thought of as a subspecies of the Eurasian lynx, the Pardine lynx is now classified as a separate species.
In contrast to the pale Eurasian lynx, the Pardine lynx has bold, leopard-like spots that stand out against its grayish or golden coat. Its face is more cat-like as well, and its look is distinguished by a short bobtail with a black tip and a small cluster of black hair atop each of its ears.
The lynx relies upon the hair at its ears to amplify sound when hunting. Its favorite prey is the rabbit, although as the numbers of rabbits in Europe have declined, the lynx has resorted to hunting deer, birds, and rodents. Patience is a virtue of the lynx; the animal will often wait several hours behind a rock for its prey to come close enough to pounce upon.
At one time, the Pardine lynx lived all along the Iberian Peninsula, but because of recent deforestation and aggressive human hunters, it now lives and breeds in just two small areas of Andalusia. It is thought by many to be the most endangered feline species in the world. If the Pardine lynx were to become extinct, it would be the first wild cat to be so in more than 2,000 years.
The cover image is from Lydekker's Royal History. The cover font is Adobe ITC Garamond. The text font is Linotype Birka; the heading font is Adobe Myriad Condensed; and the code font is LucasFont's TheSans Mono Condensed.
Comments about O'Reilly Media iPhone Open Application Development:
The author definitely knows what he is talking. The book is primarily geared to people who don't have a formal technical background. I heard at [@] they have all their UX design teams read this if they don't come from the comp sci world. Worth checking out if you want a quick read.
Bottom Line Yes, I would recommend this to a friend