iOS 7 Development: Getting and Setting Up Xcode 5 and the iOS 7 SDK

by Joey deVilla on June 17, 2013

For You, the New-to-iOS Developer, Change is Good

ios 7 developmentAs I mentioned in my previous article, iOS 7 represents more than a change in Apple’s approach to their mobile device user interfaces; it also represents an opportunity for developers who’ve been putting off learning how to build native iOS apps to get started. iOS 7 is the latest in a series of changes that makes the present time the best time for a new developer to try their hand at making apps for the iPhone, iPad and iPod Touch, which include:

Changes at Apple, which in turn will be reflected in their products and technology.

This is only the start of the first wave of products that come after the era of Steve Jobs (the tastemaker) and Scott-Forstall (the technologist), who both brought their own set of design and technology decisions to iOS. Jony Ive, who’s been responsible for Apple’s brilliant chassis designs, is now doing overall design, which includes user interfaces. On the technology side, Craig “Hair Force One” Federighi’s role has expended from just Mac OS to include iOS. While both the old and new guard seem to follow the Apple credo of “a thousand no’s for every yes”, Ive’s and Federighi’s decisions will likely be quite different from those that Jobs and Forstall would’ve made.

Changes in the tools and technology used to build iOS apps.

One of the reasons many people stay away from native iOS app development is that it looks hard. It didn’t help that iOS development required two separate applications, Xcode for code writing and Interface Builder for laying out and setting up user interfaces. Interface Builder is now built into Xcode, and this new, unified application has been refined so that it seems odd to think that they were once separate programs. At the same time, the Objective-C programming language and compiler have undergone a fair amount of modernization. If you have some experience with any currently popular object-oriented programming language, whether it’s C#, Java, JavaScript, PHP, Python, Ruby or Visual Basic, you shouldn’t have too much difficulty making the leap to Objective-C.

Changes in the design philosophy and user interface of iOS.

Before the iPhone’s introduction in 2007, smartphone interaction took place on a physical keyboard, with a trackball, stylus, or wheel acting as a secondary pointing device. iOS veered away from this familiar interface and made the touchscreen the primary input device. This new touch-based interface needed controls that clearly gave away their purpose, and this led to making them look like their physical counterparts: push buttons, toggle switches, dials, and so on. Six years have passed since the introduction of the iPhone, and most mobile devices use the touchscreen as their primary interface. While iOS’s user interface made sense in the world of 2007, in 2013, iOS’ user interface can cast off the “training wheels” it provided to users.

All these changes, taken together, mean that you can approach iOS it as if it were a completely new platform — one that just happens to have a large (and the most active) user base. This “perfect storm” of changes doesn’t happen often — perhaps once a decade — so if you’ve been putting learning iPhone and iPad native app development for “the right moment”, I have news for you: that right moment is now.

You’ll Need to Enroll in the iOS Developer Program

ios developer program enrollment page

You can get the tools for the current version of iOS simply by being enrolled in Apple’s free developer program, but in order to get an early developer look at iOS 7, you need to be registered in the iOS Developer Program. It’s only US$99 a year for individual developers, and it gives you access to all the advance information about iOS 7, as well as the ability to submit your apps for sale in the App Store. The sign-up process is fairly quick, and you can start it at Apple’s iOS Developer Program enrollment page.

Once you’re enrolled, you can start downloading the development tools and iOS 7 for your iDevice, as well as access the resources that they’ve made available to developers.

Getting the Xcode 5 Preview and iOS 7 SDK

xcode preview iconIn order to build iOS 7 apps, you’ll need the Preview version of Xcode 5, the next version of Apple’s IDE. It comes with the iOS 7 beta SDK, which includes the iOS Simulator, which lets you test your apps before deploying them to a real device (or try them out if you don’t have an iPhone, iPad or iPod Touch handy). It has a different name from the current version of Xcode (the current version is Xcode, the preview is called Xcode5-DP), and both versions can be on the same Mac at the same time.

Normally, you would simply get Xcode by downloading it for free from the Mac App Store. However, Xcode 5 is a preview and has not yet been released; you have to download it from the Apple Developer site.

Point your browser at the iOS Dev Center. If you’re properly registered in the iOS Developer Program, you should have the options of looking at resources for iOS 6.1 and iOS 7. Naturally, you should select iOS 7 SDK beta, after the page should look like the screen capture below:

ios dev center - ios 7 beta

You can click on the Downloads link under the Resources for iOS 7 beta heading, or simply scroll down. Either way, you’ll end up in the same place, where you’ll see this:

xcode 5 developer preview Click the Xcode 5 and iOS 7 SDK beta link to start the download. It’s a .dmg file that’s 1.73 GB in size, and when double-clicked, mounts a disk image and opens the window shown in the screen capture below:

xcode dmg window

It’s a straight-forward drag-the-app-to-the-Applications-folder-alias install, and you’re done!

Previous post:

Next post: