Wiley iPhone OS Development: Your visual blueprint for developing apps for Apple's mobile devices 978-0-470-55651-1 Benutzerhandbuch

Produktcode
978-0-470-55651-1
Seite von 24
2
Introducing iPhone 
OS Devices
T
he iPhone, iPod touch, and iPad combine 
innovative new computing technologies with a 
completely new business model. Technologically, 
developing for the iPhone family is challenging but 
rewarding. The development environment is loosely based 
on the Mac, with some extensions and limitations, but 
the user environment is innovative and encourages 
creative and novel experiences. 
If you are a Mac developer, you will find many concepts 
familiar and can likely start iPhone development after a 
brief reorientation. If you are new to the Apple 
development environment, give yourself a few weeks to 
master the principles and programming models. This 
book includes key concepts with worked examples. 
Combined with Apple’s documentation, they will enable 
you to move rapidly toward understanding and creating 
your own applications.
The iPhone OS documentation lists thousands of objects, 
message definitions, and function calls. The biggest 
challenge for new developers is learning which messages 
are used to signal which event. The second-biggest 
challenge is mastering the syntax of each call to the OS. 
Every message type uses a different syntax, with different 
data structures and access methods.
Fortunately, Apple’s code samples include generous 
amounts of boilerplate code. When you begin developing 
applications, you can copy this boilerplate to your own 
projects and reuse it with minor edits. As you gain 
experience, you can begin to customize it and extend it 
to meet your own requirements. You will also learn how 
to add custom messages and message handlers of your 
own design.
The App Store Advantage
Apple’s App Store is a key advantage because Apple 
distributes your app and does significant marketing for 
you. The ideal iPhone application is simple and elegant, 
and its development is tightly focused, which means 
development cycles can take months as opposed to years. 
Therefore, you see the benefit from your development work 
more quickly than you would from a typical desktop 
product, and the cost of entry in both time and capital is 
significantly lower. 
Apple’s iPhone SDK is free. To download it, you must sign 
up as a developer at http://developer.apple.com/iphone. 
Registrations are typically approved within 24 hours. If you 
decide to distribute or sell your applications through the 
App Store or test them on your own iPhone rather than 
the SDK Simulator, you must pay Apple $99 to join the 
Standard Developer Program. Individuals should allow a 
month for signup. Small businesses should allow two 
months. 
The App Store model is not perfect. You must allow two 
weeks for testing of each submitted application, and not all 
applications are accepted. There is no way to check if your 
application will be approved ahead of submission. In the 
past, Apple has blocked applications that compete with its 
own products because its air-time partners have refused to 
support them or for other reasons that remain inscrutable. 
However, most applications are accepted. Many are 
profitable. Some become very profitable indeed.
Web Apps and Native Apps
This book includes information about developing native 
applications. However, web applications remain an 
interesting option on the iPhone. When the iPhone was 
first released, no native SDK was available. All applications 
were developed as web apps for the iPhone’s Mobile Safari 
browser, which was optionally supported by server-side 
data management. 
Web apps blend HTML, CSS, JavaScript, and AJAX to 
create an interface that mimics the iPhone’s native 
interface. Flash is not supported. Web apps are not listed 
in the App Store, but you can submit them to Apple, which 
lists them in a dedicated area on the Apple web site. You 
can also direct users to your web app within Mobile Safari 
via a standard URL. 
If you are familiar with web technologies and if your 
application is relatively simple, you will find it is easier and 
faster to create an iPhone web app than a native 
application. The disadvantages of apps are limited 
performance and limited support for the iPhone’s enhanced 
hardware features. Unlike stand-alone applications, most 
web apps do not work offline. Web apps are not covered in 
detail in this book. They remain a legacy option for projects 
that aggregate and summarize web information and 
manage user interaction with web data. 
03_556511-ch01.indd   2
03_556511-ch01.indd   2
2/24/10   9:52 PM
2/24/10   9:52 PM
COPYRIGHTED MATERIAL