English |  Español |  Français |  Italiano |  Português |  Русский |  Shqip

Beginning iOS Development


Several tools are used in developing iOS applications. The primary tool is the IDE named Xcode. Closely related, and beginning with Xcode 4 directly incorporated into Xcode, is the Interface Builder. As its name implies, the Interface Builder enables you to build the user interface for the application. As you will see across all three Tutorials, Interface Builder is more than a simple screen painter.

Another important tool in terms of iOS programming is, of course, the simulator. All three devices—iPhone, iPod touch, and iPad—can be simulated. Although not a substitute for the real devices, the simulator allows for rapid development of your application.

Performance testing, detecting memory leaks, and so on still need to be performed on real devices using another tool called Instruments. Instruments provides a number of diagnostic tools, including everything from profiling to checking for zombies. It also includes a user interface automator. Given the complexity of the subject, and the less-than-immediate need in Beginning iOS Development: A Safari Tutorial, coverage of Instruments is deferred until the Intermediate iOS Development: A Safari Tutorial.

Xcode now includes a new default compiler, Clang, sometimes referred to as LLVM, and a debugger, LLDB. Built in to the compiler is an extremely powerful static analyzer.

Don’t worry about mastering these tools at this time; you will have plenty of opportunities for that as you progress through the Tutorials.

We start the overviews with a brief look at Xcode. In both the book and video, the authors provide an introduction to Xcode in terms of building a simple application. In particular, note the tight integration between Xcode and the Interface Builder. See how this integration eases some of the repetitive and mundane programming tasks like handling IBOutlets.

Unlike the other videos in the Tutorials, the short clip referenced here is not considered supplemental or optional. Several drag-and-drop actions between Xcode and the Interface Builder are better demonstrated than described. Note, however, that the video is based on Xcode 4.0, so there minor discrepancies exist between the video and the latest Xcode. You can easily adjust for these differences; they are largely unimportant at this introductory level.

As useful as it is to see Xcode in action in the video, Turner and Harrington’s presentation includes the latest changes for iOS 6. So, their presentation should be preferred over the video in terms of what works and is considered best practice under iOS 6.



As mentioned earlier, the Interface Builder is more than a screen painter. The “Getting Started” guide referenced here presents most of the features, panels, inspectors, and editors used to build an iOS application. Specific techniques are explained as needed throughout the Tutorials.

Once again, Turner and Harrington reflect the changes in iOS 6.


The simulator is a relatively simple tool, but even it has its secrets. Fortunately, it hasn’t changed much since its inception, so even an older reference is still relevant.


This sections ends with an introduction to the debugger and some useful debugging techniques. Although it is rarely admitted, getting your iOS groove on can be daunting for the beginner, and a fair number of novice iOS programmers become quite proficient with the debugger as a consequence.


There has been error in communication with Booktype server. Not sure right now where is the problem.

You should refresh this page.