What's new in Xcode 5.
Xcode 5 does more than ever to help you create high-quality apps. It automatically configures your apps to use the latest Apple services, manages images in a unified asset catalog, and helps you design stunning interfaces for iOS 7 and OS X. It also makes it easy to analyze your code, monitor performance, and test your apps, and with access to continuous integration built right in, your team can create better apps than ever before.
Xcode 5 automatically configures your app to enable Apple services such as iCloud, Passbook, or Game Center, directly within the IDE. With the new capabilities editor, enabling Apple services is as easy as flipping a switch. Simply enter your Apple ID, and Xcode will download your team information, manage your certificates, add the proper frameworks, create provisioning profiles, define entitlements, and sign your app automatically.
Test-driven development is easier than ever with the new Test Navigator which helps you create, edit, and run unit tests. A single click can run individual tests or a selected group, and the Assistant editor provides new test-specific categories that automatically place your tests and app code side by side.
Bots for Continuous Integration
Xcode works closely with OS X Server to easily create bots that continuously build your app, execute your complete test suite, and run the Xcode static analyzer to find potential bugs. You can create a new bot in only a few clicks, and immediately start it on any Mac in your network. While the remote Mac is doing all the integration work, Xcode on your local machine displays the build and test reports. A nightly bot is great for generating a regular release for your QA team. Bots can also be configured to execute on every check-in, immediately alerting committers when something is broken. Bots can even test your iOS app on connected iOS devices, surfacing any device-specific bugs. Learn more about continuous integration
Auto Layout is a powerful technology that allows you to create a single user interface which automatically adjusts to screen size, orientation, and localization. With Xcode 5, Interface Builder’s support for Auto Layout has been greatly enhanced. Interface Builder offers as much or as little help as you like, giving you a free-form canvas on which to create your next great app. Xcode offers helpful alerts when constraints are missing or mis-configured, and Interface Builder can even fix the layout for you.
View resource consumption data at a glance, including CPU, memory, energy use, iCloud, and OpenGL ES. The gauges add very little overhead while your app runs, and alert you to CPU and memory usage spikes, or other hidden problems, long before users see them. Clicking a gauge reveals a full report, complete with a preliminary diagnosis of what the issue might be. You can then launch Instruments, which will immediately perform a deeper analysis of your app’s performance.
The new top-level Source Control menu always shows the currently active branch of the project you are working on, and lets you quickly switch, create, and merge branches. You’ll never need to leave your code to create a new feature branch, fix a bug, or view code history. The new Accounts preference in Xcode gives you a single place to manage all your repositories, and OS X Server for OS X Mavericks can even host Git repositories for your team.
A beautiful app is composed of many images, each with several versions in device-specific sizes. In Xcode, managing images is simple with Asset Catalogs (.xcassets). The Asset Catalog lets you work with all versions of an image without managing individual files or memorizing filename conventions. It can even split an image to enable dynamic scaling of the interface layout while keeping file sizes small.
Xcode Visual Debugger
Built on the powerful LLDB debugging engine, the visual debugger in Xcode 5 is cleaner and more readable, and the Data Tips that hover over your code are more responsive. Variables in either view are formatted to be easier to understand at a glance, and you can now use Quick Look to quickly view an image, web page, bezier curve, or a document in memory. You can even print the object with a single click.