Sunday, May 21, 2006

J2ME??

J2ME (Java 2 Micro Edition)
- A Platform for developing powerful Mobile Applications


As a day starts, we turn towards the newspaper for a compendium of last day events. Apart from this, we see a lot of new mobile devices being promoted through print ads that have been introduced lately in the market. This clearly depicts the current scenario for mobile devices and its adjuncts. People look forward for such devices that can be substituted for a computer to organize events for a day, get them entertained and but obvious to remain connected with the rest of the world. Thus, there is a plethora of devices with different functionalities to cater the needs of all.

To implement these functionalities, we have Mobile Applications. These include small applications like Converter, Address Book etc. and also high end applications like a stripped down version of a PC game, music player etc. The specifications differ from application to application and it is not necessary that an application should be compatible with all kind of mobile devices. Hence, to develop such a vast range of applications, a platform is required that is able to develop powerful mobile applications. And that is what J2ME is all about.

J2ME in short can be said as a stripped down version of J2SE (Java 2 Standard Edition). J2SE is the standard Java platform used on desktop and server systems, so it can be said that J2ME is a family of specifications that defines various downsized versions of the Standard Java 2 platform. It provides a subset of the complete Java programming environment. Thus, all API’s (Application Programming Interfaces) associated or incorporated with J2SE is not available for J2ME. You can relate this by the fact that applications developed for mobile devices have to be executed on limited memory and processing power. J2ME provides specifications for a mobile device in the form of configurations and profiles. The configuration and profile or profiles that are appropriate for a device depend both on the nature of its hardware and the market to which it is targeted.

A Configuration is the specification for a mobile device that depends upon the factors such as: The types and amount of memory available, the processor type & speed and The type of network connection available to the device. The types of configurations available under J2ME environment are: Connected Device Configuration (CDC) and Connected Limited Device Configuration (CLDC). Both of them are used for different types of devices i.e. CDC is used for smart phones like communicators that requires a good amount of memory whereas CLDC is used for basic mobile devices that provides less functionalities compared to devices compatible with CDC.

A Profile can be said as an addition of some classes that provide features appropriate to a particular type of device. Both J2ME configurations have one or more associated profiles, some of which may themselves rely on other profiles. Some of the profiles currently defined under J2ME are: Mobile Information Device Profile (MIDP), PDA Profile (PDAP), game profile, RMI profile and some others.

Here was an introduction about J2ME to provide the reader with the basic idea of what it is and the purpose of its existence. You can very well imagine of the demand of J2ME by the fact that all the leading mobile developers like Nokia, Motorola, and Sony Ericsson etc. have launched plenty of mobile devices complying with J2ME and many more are in the pipeline.

Reference: "Core J2ME Technology and MIDP" by John Muchow.

No comments:

Blog Archive

Followers