Tuesday, July 6, 2010

Developing for the iPhone and Android

Apple's recently upgraded and renamed iOS 4 and Google's Android are competing with one another.

Android applications are written in the Java programming language.

Applications written for the iPhone operating system are written in Apple's Objective-C, a dialect of the more common C language that has elements of Smalltalk. Developers who have spent their careers working with C and C++ won't find Objective-C to be a difficult language to pick up.

But there is no clear way to write one set of code that targets both platforms; Java does not run on iPhone and Objective-C won’t work on Android.

There are new tool kits and development platforms such as Rhomobile's Rhodes, Nitobi's PhoneGap, Appcelerator's Titanium and Ansca's Corona that make it relatively straightforward to create applications that will run on some combination of the iPhone, BlackBerry, Windows Mobile, Symbian and Android platforms.

These emulators and runtime layers are new and not full-featured. While simple applications accessing the Web and bringing information back to the phone are appropriate for these types of frameworks, mobile apps relying on intense calculations and heavy database access -- which includes some custom-written line-of-business applications -- are not good candidates, because running a compatibility framework exacts an overhead penalty on a limited-power mobile processor that most users find unacceptable.

In addition, there are currently no good solutions for providing cross-platform support for a graphically intensive application, like a game or a video editor.

No comments:

Post a Comment