What’s New in Xcode
Xcode is the complete developer toolset used to create applications for Mac, iPhone, and iPad. The Xcode development environment bundles the Instruments analysis tool, iOS Simulator, and OS frameworks in the form of iOS SDKs and OS X SDKs.
Highlights for Xcode 5.1
Xcode 5.1 includes the following highlighted features:
SDKs for OS X v10.8, OS X v10.9, and iOS v7.1
Updates to the LLVM compiler
Enhancements to Auto Layout constraints and editing tools in Interface Builder
Interface Builder supports the creation of proportional and aspect ratio constraints. Enhancements to the Attributes inspector enable the creation of cross-attribute constraints as, for example, to align the leading edge of one object with the center horizontal position of another. See Adding Layout Constraints to Objects by Control-Dragging and Editing Auto Layout Constraints.
Variables Quick Look in the Xcode debugger supporting custom object types
Developers can now provide Quick Look content for their classes. When an instance of a class is viewed with Quick Look using the variables view or a data tip, the debugger looks for a method named
debugQuickLookObjectin the class implementation. For more details, see Quick Look for Custom Types in the Xcode Debugger.
For additional details on the Xcode 5.1 release, see Xcode Release Notes.
Xcode 5.1 requires a Mac running OS X v10.8.4 (or later), or OS X v10.9. It includes SDKs for OS X v10.8, OS X v10.9, and iOS v7.1. To develop apps targeting prior versions of OS X or iOS, see “About SDKs and the iOS Simulator.”
You obtain Xcode 5 from the Mac App Store. It is a free download that installs directly into the Applications folder. By default, Xcode downloads developer documentation in the background for offline reading and also automatically downloads documentation updates. This behavior can be changed after installation using the Downloads preferences pane.
The iOS and Mac Developer Programs provide access to the App Store, additional support and documentation, and provisioning resources to enable testing and deployment on an iPhone, iPod Touch, or iPad device. For more information visit:
For discussions about any Apple developer software, including prerelease products, visit the Apple Developer Forums at http://devforums.apple.com/.
For the latest security information, visit http://support.apple.com/kb/HT1222.
For more detailed information on a release, see the complete Xcode release notes available from the Help menu.
About SDKs and the iOS Simulator
A software development kit (SDK) is a collection of frameworks (libraries, headers, and resources) that represent the API for a specific iOS or OS X version. Most of the functionality your app gets from an SDK is actually provided by the host operating system, which makes the right Base SDK and OS Deployment Target settings critical for app compatibility. Xcode automatically builds with the latest SDK and targets the latest OS.
If your app doesn’t require the latest OS features, you can configure it to run on a previous version of iOS or OS X version using the OS Deployment Target option in the Xcode Project settings. If your project was created in an older version of Xcode, you can let Xcode update your project. For details on this features, see “Project Modernization.”
For iOS, Xcode automatically switches between the iOS Simulator SDK and the device SDK, depending on where you intend to run your app. You don’t need to select these settings manually.
When you open a project, Xcode evaluates it to see whether any settings should be updated. This feature provides an easy way to make sure your projects conform to the latest SDKs and best practices.
Open the issue navigator to see whether anything in your project needs to be updated. You can also select the project in the project navigator and choose Editor > Validate Settings.
If the issue navigator lists modernization issues, click the issue to see a dialog that explains the updates that should be made and that lets you perform any or all of them.
After you have clicked Perform Changes, regardless of whether you choose to make all the changes, Xcode will not show the warning again. To rerun the check, select your project in the project navigator and choose Editor > Validate Settings.
New Features in Xcode by Release
Chapter articles are listed by major revision. Minor update release information is appended in the chapter for the major revision.
Xcode 5.1 adds support for development on iOS v7.1.
Relevant Chapter: “New Features in Xcode 5.1”
Xcode 5 adds support for development on iOS v7.0 and OS X v10.9.
Relevant Chapter: “New Features in Xcode 5”
Xcode 4.6 adds support for development on iOS v6.1.
Relevant Chapter: “New Features in Xcode 4.6”
Xcode 4.5 adds support for development on iOS v6.0.
Relevant Chapter: “New Features in Xcode 4.5”
Xcode 4.4 adds support for new Objective-C language features and supports development on OS X v10.8 Mountain Lion.
Relevant Chapter: “New Features in Xcode 4.4”
Xcode 4.3 adds enhancements to Xcode installation, improves operations and workflow, and support development for iOS v5.0.
Relevant Chapter: “New Features in Xcode 4.3”
Xcode 4.2 adds enhancements to the features and workflow of Xcode 4.1 to support development for iOS v5.0.
Relevant Chapter: “New Features in Xcode 4.2”
Xcode 4.1 adds enhancements to the features and workflow of Xcode 4.0 and, when running on OS X Lion, implements user interface features standard in OS X Lion such as full-screen windows.
Relevant Chapter: “New Features in Xcode 4.1 ”
To learn more about Xcode 5, see Xcode Overview.
For short tutorials that walk you through some of the most commonly used features of Xcode, see either:
Start Developing iOS Apps Today
These two documents provide the perfect starting point for iOS and Mac app development. Follow either road map to learn how to get and use Xcode to create your first app. You will learn how to use Xcode to test and debug your source code, analyze to improve your app’s performance, perform source control operations, archive your app, and submit your app to the App Store.
To learn more about the tasks and workflow required to develop and distribute OS X or iOS apps, see App Distribution Guide.