July 28, 2009

iPhone development tools that work the way you do

You don't need to master Cocoa and Objective C to create killer iPhone apps. Rhomobile, PhoneGap, Appcelerator, and Ansca tools leverage standard Web technologies and still tap native features

When Apple opened up the iPhone to developers, O'Reilly books noticed a big jump in sales of its long-neglected titles on Cocoa and Objective C. These elegant dialects never caught on outside of Apple, but when the iPhone SDK appeared, the world started studying up again. If you want to work in Rome, learn Latin.

That requirement is starting to fade, though, as new toolkits and development platforms make it possible for programmers to avoid studying Objective C to create iPhone applications. The frameworks take code written in languages like good, old-fashioned JavaScript or newfangled Ruby and give the user complete control of the screen, just like a native application. It still makes sense to learn Objective C if you're programming a fast-moving 3-D game or something that wants to squeeze every ounce of performance from the battery-powered wonder, but everyone else can avoid returning to school now.

The toolkits also offer a promise of cross-device development, a process that is both surprisingly efficient and a source of endless little disappointments. In theory, your software will run on an iPhone, a BlackBerry, an Android handset, and in some cases even a Symbian phone or a Java ME phone. In practice, the fonts are never exactly the same and little glitches appear from time to time. If you write your code with big strokes, the pictures will look the same, but anyone who frets over the details will find plenty of struggle.

I took four of these toolkits -- Rhomobile Rhodes, Nitobi PhoneGap, Appcelerator Titanium, and Ansca Corona -- out for a spin, wrote some code, and came away certain that it was easy to create menu-driven mechanisms for browsing data using any of them. If you want to give the user a nicely tuned interface for a database, it's pretty simple to whip together an application in no time.

Rhodes, PhoneGap, Titanium, and Corona are all good tools. Although there are differences in capabilities, your choice will probably rest with the one that supports your favorite language. That's the entire point of working with these frameworks. If you know JavaScript, Lua, or Ruby, you can create something on the iPhone very quickly.

Rhomobile Rhodes
If you love Ruby or have Ruby code to port, then Rhomobile's Rhodes framework is a good path for bringing your code to mobile platforms. Rhomobile bundles a byte code version of your code with a tiny Ruby interpreter (version 1.9) to produce "native applications." Rhodes supports all of the major platforms, including iPhone, BlackBerry, Windows Mobile, Symbian, and Android, although I only looked at the iPhone result.

Read more about mobilize in InfoWorld's Mobilize Channel.

Close

On Twitter now

Mobile applications

Powered by Twitter

On Twitter now

additional resources
White Paper - How to Improve Delivery of Advanced Web Applications

White Paper

Virtual Workforce: The Key to Expanding The Business While Cutting Costs

Get the independent advice and expertise you need to support a virtual workforce.

Go inside:
The three-step approach to making a virtual workforce a reality.
The four flavors of client virtualization technologies.
The three key initiatives that solve IT challenges.
Download now »
White Paper: Successfully Secure Your Wireless LAN With Wi-Fi firewalls.

White Paper

Addressing Linux Threats Leveraging Fewer Resources

The increase in Linux popularity has increased the frequency and sophistication of malware attacks. Read this 2 page white paper now to learn how you can protect your Linux environment with real-time protection that is certified by all major Linux vendors.

Download now »
White Paper - The 2009 Handbook of Application Delivery

White Paper

The 2009 Handbook of Application Delivery

Ensuring acceptable application delivery will become even more difficult over the next few years. As a result, IT organizations need to ensure that the approach that they take to resolving the current application delivery challenges can scale to support the emerging challenges. This handbook elaborates on the key tasks associated with planning, optimization, management and control and provides decision criteria to help IT organizations choose appropriate solutions.

Download now »
White Paper - Is Your Backup System Outdated?

White Paper

Mid-range Storage Considerations

A common misconception is that mid-range storage requirements are dramatically different than that of a larger enterprise. Mid-range storage users may require less capacity, but they have similar functionality and management requirements. This ESG paper examines mid-range storage needs and reviews a new solution that adjusts size while retaining value, performance and functionality.

Download now »
jhaynie 28-Jul-09 11:56pm
Thanks for such a well written and thorough examination. I think all of us really would like to see "all boats rise" and have a wider number of developers worldwide using these great new technologies to bring great apps to the mobile ecosystem. We're all coming at it from a different view point with a fairly common goal and this is ultimately the best for developers. Jeff Haynie Appcelerator
adamblum 29-Jul-09 6:55am
I second Jeff on admiring the thorough and thoughtful analysis. For what its worth, we do not encourage the model of porting web apps (Rails or otherwise) to native smartphone apps with Rhodes. Hence our emphasis of our rhogen app generation tool and our RhoHub web-based IDE (see http://youtube.com/rhomobile for demos of RhoHub's dev process). It sounds like Peter had more success with that approach than I would have guessed possible. So perhaps this is something that we could consider for the future (facilities to port Rails apps to Rhodes) though we haven't seen it attempted much to date. What we have seen is many developers writing apps that synchronize data to the device from their existing web apps (Rails or otherwise) with RhoSync. We want to make that scenario dead easy (see the videos on the youtube channel to judge if we've achieved that). Again, thanks for the great review. As Jeff said, coverage and understanding of smartphone development frameworks should help accelerate getting rich informational apps out there, a huge boon to users and developers alike. Looking forward to reading more over time about all of these tools.
subu 10-Aug-09 11:46am
Thanks for the excellent article. In further reading on this subject I also see QuickConnectiPhone as an option similar to phonegap. Is there any specific reason QuickConnectiPhone has been left out ?

Sign up to receive InfoWorld Resource Alerts

Subscribe to the Mobilize Newsletter

Receive the latest news, reviews and discussions on everything mobile.

©1994-2010 Infoworld, Inc.