With XCode 4, Apple Start to Love Their Developers!
January 17, 2012 Leave a comment
As I mentioned on a previous blog, compared with Microsoft’s Visual Studio and the vast array of good quality reference material and samples available, the Apple development experience could easily be found wanting. With the latest version of their Development Environment – XCode, Apple is beginning to show the kind of love that developers, and in particular new developers, need.
For developers from a non-Apple development background, with a lot of experience in Java and .Net, one of the most awkward things about the older version of XCode and Apple’s Objective-C programming language, was the need to basically tell the computer when it should remember or forget things. In other languages, this is usually taken care of automatically, although sometimes you would choose to interfere in order to keep system resource usage down. The upshot was that a whole extra pointless layer of testing was added for something that provided no benefit to the end user.
Now Apple have introduced something called Automatic Reference Counting (ARC), which does the job of working out when to remember and when to forget about things. This does not sound revolutionary, but it has gotten rid of one of the more dangerous and common pitfalls of developing for iOS. Now, instead of worrying about the internals of the platform infrastructure, developers can just focus on giving the end user a great experience.
Having used XCode 4 for a while now, I can say this is probably the biggest single time saver, but Apple have put other things in too – including a helper that will suggest fixes for small problems on the fly. There is also a storyboard that allows developers to layout transitions between views visually. Overall, the improvements make the whole development experience more slick and less painful.
Why does this matter for people who aren’t developers? I think one of the upshots of this is that it makes native app development faster, easier and hence more cost-effective. Despite having spent time going down the PhoneGap route, these new development enhancements have persuaded me, at least, that native iPhone development is now actually faster and more convenient than HTML5 based frameworks. Indeed, even if you want to combine web content with your app, it is still, I would suggest, easier to hybridise properly by going native.
Whilst XCode is still not up to the level of Microsoft’s Visual Studio, it is getting very much better, which can only be to the advantage of developers and end-users alike. I look forward to more of the love in their next release!