Wednesday, November 17, 2010

Real Defination Of J2ME

Java 2 Micro Edition (J2ME) is a subset of J2SE that is geared toward embedded and handheld devices that cannot support a full J2SE implementation.

Software that raises the IQ of a handheld offers a pretty catchy tune, especially when there's a backbeat. In this case, Java software has enjoyed years of success on the server side of the equation. And it enjoys a large, devoted developer base to expand applications.
Observers emphasize a handful of advantages :

* Superior user interface control
* The ability to work with applications off-network
* Device-to-device networking
* Increased support for graphical interfaces
* Improved security and consistency of applications across platforms and devices
* Over the air, or OTA, downloads of new applications should provide convenience for enterprise and instant gratification for consumers.

There are two types of J2ME applications:
Walled garden applications are stand-alone applications that run on the wireless phone without accessing external data sources through the carrier network. Examples of walled garden applications include calculators or single player games.?
Network aware applications interact with the network. Unlike walled garden applications, network aware applications can access an external data source. An example of a network aware application is an email application that resides on the phone, retrieves addresses stored within the application, and sends email to addressees via the data network.

Design Strategies
Developing applications for small devices requires keeping certain strategies in mind during the design phase. It is best to strategically design an application for a small device before beginning coding. Correcting the code because the developer failed to consider all of the "gotchas" before developing the application can be a painful process.

Here are some design strategies to consider:

Keep it simple. Removing unnecessary features, possibly making those features a separate, secondary application.

Smaller is better. This consideration should be a "no brainer" for all developers.

Smaller applications use less memory on the device and require shorter installation times.

Minimize run-time memory use. To minimize the amount of memory used at run time, the use of scalar types in place of object types is advised. Also, do not depend on the garbage collector. The memory should be managed efficiently by setting object references to null when the application is finished with them. Another way to reduce run-time memory is to use lazy instantiation, only allocating objects on an as-needed basis. Other ways of reducing overall and peak memory use on small devices are to release resources quickly, reuse objects, and avoid exceptions.

For any kind of help please click