Quan el primer home de les cavernes programador va gravar el primer programa a les parets de la primera caverna de la programació, aquest programa el que feia era escriure Hola Mon!, varen ser les primeres pintures rupestres. Els primers llibres de programació romans començaven explicant el programa Salut, Mundi. Com que no està gens clar quins poden ser els efectes sobre les persones que trenquen aquesta tradició ancestral, crec que és més segur començar no fer experiments i fer que el nostre primer MIDlet sigui un Hola Mon!
Aneu al menú
File > New project (Ctrl-Shift-N)
Seleccioneu la categoria Mobility i seleccioneu la opció MIDP Application.
Observeu que en aquesta primera pàgina esteu escollint la configuració de la plataforma Java que utilitzareu. Teniu 2 configuracions:
Feu clic a Next.
Ara poseu com a nom de projecte (camp Project Name) HolaMon. Deixeu les opcions per defecte. Feu clic a Next.
Com que heu escollit crear un MIDlet (perfil MIDP) la configuració escollida és CLDC. En aquesta pantalla podeu escollir les versions exactes tant del perfil MIDP com de la configuració CLDC.
NOTA: Aneu amb compte amb la versió de MIDP que escolliu. No tots els mòbils suporten la versió 2.1. En el nostre cas escollim la versió 2.0.
L'apartat Device us permet escollir el tipus de telèfon i l'apartat Emulator Plaftorm, el tipus d'emulador. Consulteu l'apartat Plataformes d'emulació de l'article sobre Java ME. Feu clic a Next.
La següent finestra la deixeu amb les opcions per defecte. Feu clic a Finish. Ja teniu el MIDlet creat.
Aneu a la pestanya Screen i modifiqueu els texts:
Per veure el codi font feu clic al botó dret a sobre del text (menú contextual) i seleccioneu Goto Source. Us redirigirà cap al mètode getStringItem del fitxer HelloMIDlet.java:
/** * Returns an initiliazed instance of stringItem component. * @return the initialized component instance */ public StringItem getStringItem() { if (stringItem == null) { // write pre-init user code here stringItem = new StringItem("Hola", "Hola Mon!"); // write post-init user code here } return stringItem; }
Les zones que apareixen en gris a l'editor, són zones que no podem modificar. És codi creat des de la pestanya Screen, i per tant, estè relacionat amb la vista d'aplicació (la vista es tot allò referent a la presentació i/o a la interfície d'usuari).
L'única zona de codi que podeu modificar és:
// write pre-init user code here stringItem = new StringItem("Hola", "Hola Mon!"); // write post-init user code here
Podeu modificar directament la línia:
stringItem = new StringItem("Hola", "Hola Mon!");
Però no és imprescindible (els canvis es poden fer des de la pestanya Screen).
Els comentaris:
// write pre-init user code here ... // write post-init user code here
Us indiquen a on podeu afegir codi.
Ara us moment ideal per començar a conèixer les eines de navegació pel codi que ofereix Netbeans. Si seleccioneu el text getStringItem corresponent al nom de la funció a la que estem, podeu executar un cerca d'usos (on s'utilitza aquesta funció) amb Alt+F7 o utilitzant el menú contextual (botó dret i escollir Find Usages).
Veureu que s'utilitza el mètode al mètode getForm:
public Form getForm() { if (form == null) { // write pre-init user code here form = new Form("Welcome", new Item[] { getStringItem() }); form.addCommand(getExitCommand()); form.setCommandListener(this); // write post-init user code here } return form; }
Que retorna un objecte gràfic de Java ME (vegeu Limited Connected Devices User Interface LCUID) de tipus formulari. Els detalls d'aquest tipus d'objectes i dels seus mètodes els veurem més endavant. Al seu temps, el mètode getForm() és utilitzat (tornem a repetir Alt+F7) a:
public void startMIDlet() { // write pre-action user code here switchDisplayable(null, getForm()); // write post-action user code here }
Al seu torn el mètode startMIDlet és utilitzat a startApp
/** * Called when MIDlet is started. * Checks whether the MIDlet have been already started and initialize/starts or resumes the MIDlet. */ public void startApp() { if (midletPaused) { resumeMIDlet (); } else { initialize (); startMIDlet (); } midletPaused = false; }
Mètode que com hem vist a Cicle de vida i esquelet d'un MIDlet, és un dels mètodes principals d'un MIDlet.
Tingueu en compte l'existència dels mètodes:
initialize()
amb l'opció Navigate>Go to Source del menú contextual (botó dret) o Ctrl+Shift+B.Per executar el vostre primer MIDlet en l'emulador feu clic al botó Play . El resultat és el següent:
Seleccioneu el MIDlet que voleu executar, utilitzeu el teclat del mòbil, pitgeu el botó . Ja teniu el MIDlet executat: