5. javax.microedition.ioCLDC is provides the basic support to build an application for very small devices CLDC can not be used alone for constructing a mobile phone application Mobile Information Device Profile (MIDP) / Information Module Profile (IMP) is used in conjunction with CLDC for a complete programming environment Copyright : Saurabh Jain 2010 www.openclassworld.org/javame
9. java.lang package in CLDC 1.0 and MIDP 1.0 Copyright : Saurabh Jain 2010 www.openclassworld.org/javame
10. java.util java.util package in CLDC 1.0 and MIDP 1.0 Copyright : Saurabh Jain 2010 www.openclassworld.org/javame
11. Differences between Mobile & Desktop Programming Copyright : Saurabh Jain 2010 www.openclassworld.org/javame
12. Low amount of memory Memory is the biggest constraint in the mobile phone programming. CLDC, MIDP enabled devices normally support MIDlets under 64 kb, some even below that. Thus as a programmer the biggest task is to conserve space and reuse variables as much as possible. Also the garbage collector is not as efficient as its bigger cousins. Thus the thrust should be on variable reuse. These problems are not there in new phones but still try to be conservative in memory usage if your application has to be used by masses. Copyright : Saurabh Jain 2010 www.openclassworld.org/javame
13.
14. Low level UIIn most of the devices only one screen object is visible at any given time Copyright : Saurabh Jain 2010 www.openclassworld.org/javame
15. No floating point support Floating point refers to the support for decimal bearing numbers and fractions. In the PC environment or for that matter in many other mobile platforms this constraint is not there. But this constraint is there in the CLDC 1.0 . At first the programmers feel frustrated, but there are practical ways to get around with this problem and in fact many application available today use decimal numbers without the floating point support. This difference really brings out a major difference in the mobile programming from the PC. If PC programming has some set paths, the paths in this platform are few, but there are almost always paths to overcome these problems and find the shortcuts. Copyright : Saurabh Jain 2010 www.openclassworld.org/javame
16. No support for file system Another major deficiency with old phones is lack of a file system. MIDP supports persistent storage but only through a simple Record Management System (RMS). The record management system consists of different records in a ‘RecordStore’ where they could each be individually read, retrieved and modified. The application can have many different RecordStores. Through proper planning and execution this deficiency could also be overcome in a major way. In fact some real world applications support spreadsheets, game stage design stores, notes all with the help of the simple record stores. Now JSR 75 does allow accessing file system in Java ME but JSR 75 is not there in every phone which supports Java ME. Copyright : Saurabh Jain 2010 www.openclassworld.org/javame
17. No support for a printer A major difference when writing applications on a PC and a mobile device and especially with CLDC, MIDP is that there is no support for the printers. The output of the applications could not be printed. Although a few phones do support printing with the help of Bluetooth but there is no direct support for printing through CLDC or MIDP with the help of a printing API. Copyright : Saurabh Jain 2010 www.openclassworld.org/javame
18. Different features in different devices One of the major differences from the PC environment is that a program written even in Java ME, although portable without any recompiling in different devices, will look and act differently in many ways. Some special APIs like the ‘Mobile Media API’ are only supported in some specific handsets. Also there is no one or two screen sizes supported by the different devices. The screen sizes can range from anywhere between 96 x 54 to more than 176 x 208. Thus portability takes a totally different dimension in these devices. Some features though standard in some devices are altogether missing in others. Thus the developer should be open to the fact that what looks and feels great in one device could look awful on the other. Copyright : Saurabh Jain 2010 www.openclassworld.org/javame
19. Faster production of applications Unlike the PC application which take years to build and test, the compactness of programming increases the speed of application development. Typically applications take less than 3 months to build from scratch. Thus in spite of the demerits the biggest merit is the lower cost of producing applications. Also the strength of teams required for programming is also not much. Teams could generally range from 1 person working alone to 18-20 people, which is very small when compared to the desktop standard where even hundreds or even thousands of programmers are working simultaneously on an application. Copyright : Saurabh Jain 2010 www.openclassworld.org/javame