One of the main challenges faced by a mobile application developer is the lack of a cross platform compatible developing environment suitable for Android and iOS devices. The popular IDEs for both the platforms, Eclipse and Xcode, is put under comparative analysis on various grounds to measure its potentials and weaknesses.
Smart gadgets like Mobile phones, smart phones, tablets, palm tops etc are taking over the world upside down. The statement won’t be an exaggerated one in the current scenario. Most of the internet action is going to take place inside the smart and small world of smart phones and tablets. Apple iPhone, Google Android, Palm WebOS, Windows Mobile, Symbian OS and RIM Blackberry etc are the few players who dominate the best game in the industry. Out of this, the first two are the leading ones with respect to popularity, consumer satisfaction, application development etc.
Application development for mobiles and smart phones is very much happening, now-a-days. And one of the most intriguing aspect is that mobile application development is not cross-platform compatible. The Apple iPhone works on top of its special operating system, while Google Android is another OS, with power packed features. There is no common integrated development environment (IDE) available for mobile application development, so that a single mobile application can be installed in both smart phones. This is one major area where research is continuing and major breakthroughs are expected. Even though some plug ins and add-on provide extended support between cross platform operation, the results are not consistent and stable.
Xcode and Eclipse
Narrowing down to Apple and Android will provide two different IDEs for the developers to work on each platforms. Xcode is an exclusive development environment for Apple products while Eclipse is a general platform with Android SDK support. Xcode is the complete developer tool kit for developing applications for Apple devices like Mac, iPhone and iPad. This package installs the Xcode IDE, performance analysis tool, iPhone and iPad simulators and operating system framework in the form of SDKs for mac OS and iOS. The latest release is Xcode 4 with many added new features and functionality like all-in-one workspace, navigators, libraries, inspectors etc. Android is the open source mobile platform and the word literally means a robot with human qualities. Android mobile application development is best done in Eclipse, which is an extensible development platform with extended and light weight plug-ins with an emulator for Android SDK and Android ADT.
Comparison between Xcode and Eclipse
1. Cost factors : Apple iOS development with Xcode is expected to incur an initial start up cost as Apple iPhone development can be done on Mac Whereas Android development can be done on any machine with any OS as it is an open source one.
2. SDK : There are various differences in accessing the software development kit for Apple and Android developers. The Android SDK can be downloaded freely and used by developers without user ids or registration, while Apple SDK is available only at a cost. Apple mac users have an advantage here as the cost is less for them.
3. Installation : The iOS SDK is an all-in-one installer with the development IDE Xcode, simulators and the tool kit bundled together. But for Android development you need to install each component on a separate basis like the development IDE Eclipse, Android tool kit for Eclipse, JDK etc
4. Platform release schedules : The updates and releases must be known to the developer so that he can make sure that the application is stable with all major changes and on all devices. For iOS, the releases are very predictable while for Android , there is no control on when the updates are scheduled to be released.
5. Testing : Since Android is open source and is supported in numerous devices, it need to be put under exhaustive testing techniques whereas Apple has limited devices which support the OS and therefore, its applications will be well fitted to that set of devices.
6. Development tools : The iOS development IDE , Xcode is exclusively meant for application development for Apple. The open source Android is taking the extended Eclipse IDE for development environment with the extensible Android SDK tool kit.
7. Language : Apple is basically using Objective C language and the supported libraries while Open source Android development through Eclipse IDE is done mostly in Java.
Both Xcode for Apple and Eclipse for Android is very much different from each other as the former is a very closed system and the latter is an open system, in all means. But there is scope of advancements for developers of each school, Xcode and Eclipse.