Developing on iOS vs. Android — There is no one clear winner

Steve Jim
3 min readSep 9, 2016

--

Let’s start with how you actually go about creating an app for either Android or iOS. In both cases, you’re going to have a lot of documentation and support to help you out, which is a good start.

But at the same time, both platforms have tons of options, various different elements and a lot to get your head around before you can really dive in. This is not just a case of learning a new programming language and getting to work…

iPhone Application Development

In Apple’s case, you’ll be creating your apps using the Xcode IDE with the iOS SDK. Xcode supports multiple programming languages but the one that most new developers will choose is Swift. That’s because Swift is a programming language that was created specifically by Apple for iOS and OS X. It is based on Objective-C but is apparently less prone to errors and more concise. If you’re determined to though, then you can use Xcode with plain Objective-C, JavaScript or even Python (among other programming languages).

So just how easy is all this? Reports vary but it’s certainly true that things could be more straightforward. Swift works with Cocoa Touch, which is an API for building iOS UI elements. This means you’re going to have to get your head around not only Swift but also Cocoa Touch and the iOS SDK.

And adding an extra barrier is the fact that Xcode will only run on Macs. That’s right: if you’re going to develop for iOS, you’ll need to buy yourself a relatively powerful Mac and an iPhone/pad if you don’t already own one. This significantly increases the initial investment you’ll need to make before you can get started.

Android Application Development

On the Android side, things aren’t actually that different. Once again, you’ll need an IDE which in this case is probably going to be Android Studio. This means you’re going to be programming in Java and simultaneously using the Android SDK.

So which experience is more streamlined and accessible? To be honest, neither is a particularly appealing prospect for a beginner. And I have much more experience with Android development, so I’m not really in a position to judge the quirks of Xcode. What I can tell you is that Objective-C/Swift and Java are not worlds apart. If you’re used to developing in one, then transitioning to the other shouldn’t be too jarring. Both are object oriented and a fair amount of the structure is similar. There is also no clear consensus on the web as to whether Android Studio or Xcode is superior. Both have their strengths and weaknesses and both could stand to learn a thing or two from the other. It’s certainly true that the iOS simulator is considerably better for debugging than the Android emulators. On the other hand, you can install Android Studio on a PC or a Mac, which is a big win. And it has better auto complete. In either camp though, you’re going to find a lot of people complaining about things not being as intuitive or quick as they should be, which is fair.

Moreover, for mobile application development services you have to be very cautious about methodology of the developers and their cost factor.

--

--