Newsletter sign-up
View all newsletters

Enterprise Java Newsletter
Stay up to date on the latest tutorials and Java community news posted on JavaWorld

Sponsored Links

Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs

Native, Web, or hybrid: How to choose your mobile development path

New tools and frameworks plus the right development kit could boost your mobile apps to multiple platforms

  • Print
  • Feedback

Page 2 of 5

Pure native apps deliver the best device fidelity and user experience, but require significant time and skill to produce. Pure Web apps -- including those using WebKit shells to masquerade as native apps -- are quick to deploy but have significant limitations. The latest approach, hybrid app development, combines prebuilt native containers with on-the-fly Web coding to try to achieve the best of both worlds. But this path requires you to buy into one vendor's vision of the app creation process.

Once you've chosen a development path, you're ready to go shopping for a mobile development kit. If you're new to mobile app development, expect to test-drive a number of products before committing time and treasure to one. Your first app must make a good impression, but it also needs to be delivered on time; it's a good idea to scale back expectations to make sure you don't inadvertently end up with mobile vaporware.

 Mobile app-dev golden path No. 1: Native app development
Native app development for a single mobile OS is the traditional approach, but it's also the most time-consuming. Each mobile platform vendor offers completely different programming environments, and each has a unique UI style. Apple's Xcode IDE employs the proprietary Objective-C language for iOS devices, while Google's Android coders generally use the open source Eclipse IDE combined with Android's native Android Development Tools (ADT) Java programming plug-in. Microsoft offers Visual Studio Express for Windows Mobile and its Windows Phone SDK, aimed at WP7 devices, in which programmers code in the also-proprietary C#/.Net idiom.

The vendor-tool native approach guarantees access to every nook and cranny of a device, but it also requires computer-science-grade software engineers. In addition to being the most time-consuming, it is the most expensive methodology. Although device vendor tools are available free of charge (vendors having a vested interest in evangelizing their mobile OSes), building one requires real programming skills. Coding difficulty ramps up rapidly as app complexity increases. An experienced C programmer can build a simple app in mere hours, but more complex apps easily rack up hundreds of developer hours -- and tens of thousands of dollars in labor costs.

But for apps that will have a long lifetime or require best-of-breed performance, native development is the way to go. If your app needs to get online quickly, though, you may not be able to achieve a delivery deadline without hiring pricey consultants or investing in expensive in-depth staff training, such as that offered by Big Nerd Ranch.

 Mobile app-dev golden path No. 2: Web-based development
The second, and quite popular, path is Web-based development. The app isn't really an app at all, but a customized website tailored to have the look and feel of an app. This is by far the simplest approach, and the app logic can readily tailor itself on the fly to different OS platforms. In iOS devices, you can even create an app icon using the Add to Home Screen feature in Safari, giving users more of the illusion of a native app.


  • Print
  • Feedback