To develop iOS applications, you use Xcode, Apple’s first-class integrated development environment (IDE). Xcode provides all the tools you need to design your application’s user interface and write the code that brings it to life. As you develop your application, you run it on your computer, an iPhone, an iPad, or an iPod touch.
This document describes the iOS application development process. It also provides information about becoming a member of the iPhone Developer Program, which is required to run applications on devices for testing.
After you finish developing your iOS application, you submit it to the App Store, the secure marketplace where iOS users obtain their applications. However, you should test your application on a small set of users before publishing it to cover a wide variety of usage patterns and get feedback about your product. This document describes how to create a group of testers for your application and how to distribute it to them.
To take advantage of this document, you should be familiar with the iOS application architecture, described in iOS Application Programming Guide. You should also be familiar with basic programming concepts.
After reading this document, you’ll have a basic understanding of the iOS application development process. To enhance that knowledge, you should read the documents listed later in this introduction.
Software requirements: This document applies to the iPhone SDK 4.0 (with Xcode 3.2.3) distribution on Mac OS X v10.6.
If you’re interested in developing iOS web applications, visit http://developer.apple.com/safari/library.
This document contains the following chapters:
“iOS Development Quick Start” provides an overview of the major development tasks you follow to design, build, and run an application using Xcode.
“Configuring Applications” describes how to configure your application’s properties and entitlements, and how to adapt it so that it builds correctly in the iOS simulation and device environments.
“Running Applications” describes each of the steps required to run or debug your iOS applications.
“Using iPhone Simulator” describes the ways in which you use your computer’s input devices to simulate the interaction between iOS users and their devices.
“Managing Devices and Digital Identities” shows how to configure your computer and your device for development; how to use the Xcode Organizer to view console logs or crash information, and take screen shots of applications running on your device; and how to safeguard the digital identifications required to install applications in development on devices.
“Debugging Applications” describes the Xcode debugging facilities.
“Unit Testing Applications” introduces unit testing and describes how you can take advantage of it in your projects.
“Tuning Applications” describes Instruments and Shark, the tools you use to measure and tune your application’s performance.
“Distributing Applications” describes how to create an archive of an application using a distribution provisioning profile, and how to send it to application testers or submit it to iTunes Connect. It also contains testing instructions for application testers.
“iOS Development FAQ” lists common questions developers ask about iPhone Simulator.
“Hello, World! Source Code” contains the source code for the Hello, World! application described in “Tutorial: Hello, World!.”
“Unit-Test Result Macro Reference” describes the test-result macros you can use in your unit-test methods.
To install the tools you need to develop iOS applications, including Xcode, iPhone Simulator, and others, visit http://developer.apple.com/iphone.
These documents describe the essential concepts you need to know about developing iOS applications:
iOS Technology Overview introduces iOS and its technologies.
iOS Application Programming Guide describes the architecture of an iOS application and shows the key customization points in UIKit and other key system frameworks.
Cocoa Fundamentals Guide introduces the basic concepts, terminology, architectures, and design patterns of the Cocoa frameworks and development environment.
The Objective-C Programming Language introduces object-oriented programming and describes the main programming language used for iOS development.
Dashcode User Guide, which describes how to create webpages optimized for Safari on iOS. These web applications make use of web technologies such as HTML, CSS, and JavaScript.
Last updated: 2010-07-02