After my fair share of procrastination, I finally succumbed to the charm of mobile application development. However, as the initial enthusiasm subsided, the reality struck..i.e where to start? Should I start learning Objective C?!@# malloc’s and calloc’s are certainly not my forte. Should I brush-up Java? or JavaME? will it work on iphone?
I chose the easier path out. I set-out to find cross platform tools, which can accelerate native mobile application development. To my surprise there are quite a few tools out there catering to wannabe mobile developers like me.
Here are my favorite picks:
My Ruby developer friends will love me for sharing this (if not using it already). Developed by Rhomobile – free under GPL v3, easy pricing for commercial usage. The framework is referred to as "Ruby on Rails" of mobile development. It provides MVC framework (Model with – RhoSync & View and Control using Rhodes). Provides deep cross platform support, with application once developed can easily be deployed to iPhone, Blackberry, Windows Mobile, Symbian(! if still stays afloat after Nokia dumps it) and 'of-course' Android.
For iPhone fans: Support for native iPhone features is the best in the breed. Rhodes supports geolocation, camera, contacts, accelerometer, SMS, push, road map and audio / video capture.
One more interesting stuff, use of rhohub for distributed development and easy packaging of applications.
Provides decent support for native iPhone features such as geolocation, accelerometer and contacts.
Downside: you still may need to learn Objective C for executing server side action. Off-late Apple appstore has rejected some of the Phonegap developed apps under pretext of compatibility issues with future iPhone OS and the use of unsupported 3rd party APIs.
Titanium provides decent support for native iPhone features such as geolocation, accelerometer, contacts and photos. Better integration with underlying apple libraries enables more standards compliant results.
Developed by Ansca – free access to beta version – licensing is evolving. Uses Lua scripting language to develop applications. As of now, Corona enables application development for iPhone only.
Corona provides access to iphone file systems. Support for other native iPhone features such as camera and accelerometer is still under development.
Corona provides built in support for flash, hence has its advantages for development of two dimensional gaming applications.
As I make up my mind to take the plunge (leaning more towards Rhodes), please feel free to share your pick and experience on working with cross platform mobile development tools.