- Getting to Know Xcode
- Goodbye "8220;Hello, World"
- Hello, App Development for Mac OS X and iOS
- Getting Started with Xcode
- Using the Navigator
- Using Editors
- Working with Assistant
- Getting Help in an Editor Window
- Using UtilitiesInspectors
- Using UtilitiesLibraries
- Using the Text Editor
- Using the Organizer Window
- Summary
- Workshop
- Activities
Getting Started with Xcode
Whether you are creating a new Xcode project or reopening an old one, you see the Xcode workspace window shown in Figure 1.3. Note that depending on your project and your Xcode preferences, the details of the window (not to mention the code) will very likely be different.
Figure 1.3 You work inside the Xcode workspace window.
Using the Workspace Window
As noted previously, Apple developer tools often provide a test bed for new interface features (and, under the hood, performance advances such as advanced threading). In its first demonstration of Mac OS X 10.7 (Lion), Apple showed how full-screen apps could take over the screen in much the same way that all apps do on mobile iOS devices. As Apple has moved forward, Xcode has provided an example of how a full-screen app can work. It was compelling and relatively simple to demonstrate full-screen implementations of existing apps such as Preview, iCal, iPhoto, and Mail, which Apple did as long ago as fall of 2010.
But how would full-screen apps work with data that is not visual the way that photos, calendars, and the documents shown in Preview are? The answer was under developers’ eyes right at the first preview: They just had to download a beta version of Xcode 4.
The window is a combination of panes and panes-within-panes that can be shown or hidden as well as resized. At first glance, Figure 1.3 can be daunting. But when you look at it a second time, you will see that it is actually fairly simple. It uses and reuses three components. Each component exhibits the same behavior wherever it appears. In addition, you can show or hide almost all the components, rearrange them, and resize them.
These are the main components of the workspace window:
- Areas—There are three areas shown in Figure 1.3. At the left is the navigator area, at the right is the utility area, and hidden at the bottom is the debug area. Each of these can be shown or hidden by using the three View buttons at the upper right of the workspace window. The editor area, in the center of the workspace window, is always visible.
- Bars—At the top of the navigator, editor, and debug areas, you will find a bar you can use to select different views for the area. The bar above the editor area is the jump bar, but the others are the navigator selector bar and the debug bar.
- Panes—The utility area is divided into two panes, each of which can be resized. The combined height of the utility area remains constant within the window size, so if you enlarge the height of the library pane, you automatically reduce the height of the inspector pane. Selector bars appear at the top of the panes in the utility area.
There are three lesser components in the workspace window:
- Filter bar—At the bottom of the navigator area, this lets you filter the lists in the navigator to include or exclude certain types of items, such as class symbols, files with unsaved changes, and so forth.
- Breakpoint gutter—This appears in the editor area and lets you insert and delete breakpoints for debugging.
- Focus ribbon—This lets you expand or collapse sections of code in the editor.
There you have it: The workspace window is a compact and powerful environment to let you manage your development process. The same interface elements are used over and over, which means you do not have to learn a multitude of interfaces and functions. This is the result of the consolidation of Project Builder and Interface Builder along with a great deal of hard work and imagination.
Xcode is designed to be customizable with all kinds of preferences; these, together with the basic interface components, allow you to work the way you want to work on the projects you want to work on. (An iPhone app? A Mac OS app? And if you work for Apple, Mac OS X itself?) For these reasons, there is no sequential way to start working with Xcode. The sections that follow highlight some of the main components: Feel free to skip around.