Baby steps onto J2ME
Stepping into using J2ME warrants major alteration in mindset for a programmer so far promenading in J2SE. Experienced J2ME programmers may perhaps enlighten me on this but these are opening remarks as I very recently took on developing applications for mobile devices. You have an array of challenges when you compare it to developing applications for PC. The Screen size is restrained, as are the processing ability and memory of these devices. The challenge is to cope up with the limitations and do not let these dejecting facts reach the user, he must feel the richness of the user interface on the mobile as he does on his desktop, least ways closer to that.
As a developer you feel like being asked to deliver a speech in front of a mammoth crowd with no public address system. You have an abridged class library at your disposal, no reflection, and no finalization. Given that majority of the MIDP devices have less than 100K of dynamic memory available the developer has to be constantly vigilant on the memory his algorithms consume.
On the IDE front it is a solace for a Netbeans user that the IDE has lot many modules available for J2ME developers. However I prefer using KToolbar for building and packaging my application with Netbeans as the Java editor owing to the fact that it is required and that Netbeans doesn't understand the directory structure of applications created by KToolbar, causes problems with the package structure (something wrong here? please do drop a comment). However the present arrangement does not bother me, at least for now.
Hi,
Give a try to IntelliJ IDEA with the plugin for J2ME support. Its a wrap aroung WTK and uses ant tasks to build and deploy midlets.
First download antenna ant tasks fro J2ME from sourceforge.net..
use the ide as editor and the antenna ant tasks to preverify and etc..that way you avoid the ide ktoolbar problem..
You wil find that you will be modifying some of your oop concepts to make coee fit into midp/j2me..for example one of the patterns is to instead of using objects to use groups of methods and calling a individual method within that group…