Minimum RequirementsI’m not going to beat around the bush. Bottom line is that if you want to get started with iOS application development you’re going to need (or at least have access to) a Mac and at it ideally will be running latest version of OS X.
If you’re a PC owner, you’re out of luck I’m afraid. The Xcode development tools are only available on OS X and there isn’t really a viable PC alternative at present. I guess it’s a marketing choice on Apples behalf but for now if you want to join the world of iOS developers it’s a really a Mac or nothing.
“The Mac Mini can be a great entry level solution but add a Thunderbolt Display and the costs start mounting.”
Development Hardware Options
So what does this mean if you haven’t already got a Mac and want to get started? Well, you have a few options.The first is the Mac Mini. At around £399 / $499 at the time of writing, this is a pretty good option if you want to get started and already have a display kicking around that you can hook it up to. The down-side though is that if you haven’t, and you start adding the cost of one of Apple’s Thunderbolt Displays into the mix, you’re looking at another £899 / $999 at the time of writing and the costs are mounting pretty rapidly.The next option then is the iMac. A 21.5-inch iMac is available from £899 / $1099 and is a pretty good alternative to the Mac Mini / Thunderbolt Display combo and is around £300 / $300 cheaper. It definitely gets around the problem of having to buy a separate screen and if you’re looking for a desktop solution this is probably your best bet.For those looking for a more mobile alternative though (such as for coding in front of the TV – yes I admit I do that sometimes), you’ve really got a choice between the Macbook, MacBook Air and the MacBook Pro. The entry level MacBook is $1299 / £1049, an 11-inch Macbook Air is available from around £749 / $899 and a 13-inch MacBook Pro is a little more expensive at £999 / $1299. My preference out of these would be the 13-inch MacBook Pro though. All of them are viable alternatives but the one thing I have learnt is that Xcode loves screen real-estate so where possible I’d go for the biggest screen you can afford.
“The iMac is perfect for those who don’t mind being bound to the desktop.”
iOS Device OptionsIn terms of the iOS Device side of things, the picture is a little more rosy.When it comes to iOS devices, you can start developing for iOS without owning an iOS device at all.The Xcode development tools come with an iOS Simulator that allows you to simulate an iOS device right-there on your desktop. This is great option for both novices and professionals alike but it does have it’s limitations and experience has proven that it is simply no substitute for being able to run your applications on a real iOS device.With this in mind I’d recommend that you try to get your hands on an iPhone or iPad as soon as you can. In my opinion it’s really an essential purchase in the long-term, especially if you are going to develop applications for the App Store. Depending on your needs though, you might not need the latest and greatest piece of Apple hardware and if your just getting started, my tip would be to keep an eye out on on eBay or Craigslist, especially when Apple releases a new revision of their iOS hardware. You’ll often find people selling off their devices as they upgrade and it can be a great way of picking up an inexpensive iOS Device to use for development.Worst case though, if your budget really can’t stretch to an iOS device at the moment (especially if you’re having to splash out for a new Mac), don’t worry too much and please don’t be put off. As I’ve mentioned previously, you can still get started with Swift and iOS Development with an Intel-based Mac and the iOS Simulator. The important thing, as with many things, is overcoming inertia and getting started.
“For a more mobile development platform, the Macbook Pro is probably your best bet but try to go for as much screen real-estate as you can afford.”You probably won’t need an iOS device immediately anyway, especially if you’re new to the platform, so my approach would be to start learning Swift (this blog will help you with that) and in the mean time save up and buy an iOS device when your finances allow. Trust me, you’ll want one once you start writing apps of your own. There’s nothing quite like pulling out your iOS device and showing your friends your latest creation!