Google It All

Sunday, December 14, 2008

Mobile Development

Mobile development comparison


Overview
Java ME Ideal for a portable solution, if the Java ME platform provides the needed functionality. Good for vertical applications that must be portable. Device-specific libraries exist for many devices and are commonly used for games, making them non-portable.
Symbian Very powerful for general purpose development. The Symbian based S60 platform is strongly supported by Nokia with some support from other device manufacturers. In Japan NTT DoCoMo's Symbian based MOAP platform is also well supported by a number of manufacturers (Fujitsu, Sony Ericsson Japan, Mitsubishi and Sharp amongst others). It should be noted, however, that MOAP is not an open development platform. Another Symbian based platform, UIQ, is less well supported (principally by Sony Ericsson and Motorola). Currently large device deployments in Europe and Japan, with little penetration in the US market.
Android Recently announced by the Open Handset Alliance, whose 34 members include Google, HTC, Motorola, Qualcomm, and T-Mobile, Android is a new Linux-based platform currently available only as a developer pre-release. Although it does not yet have any fielded implementations, its support by 34 major software, hardware and telecoms companies makes it likely that it will be rapidly adopted from 2008. The Linux kernel is used as a hardware abstraction layer (HAL). Application programming is exclusively done in Java. You need the Android specific Java SDK. Besides the Android Java Libraries it is possible to use normal Java IDEs.
iPhone iPhone and iPod touch development with the iPhone SDK is ideal for quickly developing applications for users of the iPhone. iPhone apps must be cleared for approval to Apple before being listed on the app store. The programming language used is Objective C, based on the C programming language. Currently, the iPhone SDK is only available on Mac OS X 10.5.
Lazarus Ideal for prototyping and quickly developing database powered applications. Also useful for porting Object Pascal software to mobiles. Can access the native APIs when translated headers are available.
Python Ideal for initial prototyping and concept testing when functionality falls outside Java ME.
.NET Compact Framework Ideal for deployment on homogeneous Pocket-PC devices. However not cross platform and limited to Microsoft Windows Mobile devices.
BREW Ideal for deploying applications for deployment on CDMA-based networks (also supports GPRS/GSM models) with a deployed Brew Content Platform especially if OTA app deployment is desired. Little penetration in Europe.
Pocket PC and Microsoft Smartphone Ideal for enterprise applications with an existing PC infrastructure and options for significant development investment. However not cross platform and limited to Microsoft devices.
Palm OS Significant player with strong enterprise following in the important US market.
Flash Lite Ideal for Graphics-heavy options with a market that can support the Flash Lite player.
Microbrowser Based Ideal for lightweight functionality, a web-interface for an existing application with no latency concerns, or a widely varying platform base

No comments: