Retsensioon Kaupo Parmase diplomitööle Java mobiilirakenduste loomine JME abil Algselt miniseadmetele mõeldud Java on ringiga ka oma juurte juurde tagasi jõudnud. 1990ndate algul looduna oli põhisoov just leida võimalus magnetofonide, pesumasinate jms. tarbeks leida programmeerimismoodus, kus ei peaks taas kõike otsast peale kirjutama hakkama - et olemasolevat koodi saaks eri aparaatidel kasutada. Vahepeal veebirakendite ja serverimaailma juures ilma teinud Java abil luuakse üha rohkem rakendusi miniseadmetele, mis tänapäeval on sageli ühtlasi mobiiltelefonid. Maailmas on JME programmeerimise materjale mõnevõrra kirjutatud, kuid kindlasti kordades vähem kui J2SE omi. Ka eesti keeles on midagi olemas - paari aasta eest retsensendi kokku pandud tutvustus mobiilirakenduste loomiseks Java abil. Samuti mõned lõputööd konkreetsete rakendustüüpide loomiseks või lõigu tutvustamiseks. Tallinna Ülikoolis nt. mobiiltelefoni heliloojaprogramm, üle võrgu suhtlev ajaplaneerija ning käesoleval kevadel kaitstakse lõputööd mobiiltelefonide kolmemõõtmelise graafika teemadel. Samas pole materjale ja õppevahendeid J2ME teemadel veel sugugi liiast, nii et töö on kindlasti aktuaalne. Kirjutise enese kohta. Eestikeelses töös olnuks viisakas koostada joonised ise eesti keeles või siis lisada juurde tõlge. Vormistus on üldjoontes korrektne. Aga nt. lk. 12 algul on jäänud loetelupunkt keset lauset. Lk 15 jääb kripeldama punkt, et miks kasutajad peaksid soovima robustsemaid turvalisi rakendusi - ehk mõeldakse selle all töökindlust. Samuti vaidlen vastu järgnevale lõigule, kus öeldakse, et tarkvaraarendajad saavad kasutada suurt osa J2SE APIsid. Oma tähelepanekute järgi on juba pakette J2MEs kümmekond korda vähem, samuti on klassid võimalikult nuditud. Eks lihtsamad algoritmid saab üle kanda küll ja mõnede abiklasside oskused ka. Aga muud koodi ümberportimist pean ikka päris suureks tööks. CDC pakub küll rohkem võimalusi kui CLDC, kuid näiteks kasutajaliides tuleb enamikul juhtudel vist ikka päris uus teha. Hea ja originaalse osana on tutvustatud J2ME programmeerimiseks sobilikke arendusvahendeid. Alustajale tõenäoliselt piisab standardlahenduses kaasa tulevast KToolbarist, aga kel mõne keskkonnaga eelnev kogemus olemas, see suure tõenäosusega kasutab meeleldi sama keskkonna võimalusi ka muude rakenduste kokkupanekuks. Tulevasi lugejaid/õppijaid arvestades on väärtuslikud näited rakenduse kokkupanekuks. Just algusotsa loomine paistab õppuritel suhteliselt palju aega võtma. Siin on aga küllalt ilusti "puust ette ja punaseks" seletatud, kuidas midagi teha tasub. Samuti mõnegi õppuri jaoks on kasulikud töö juures olevad skeemid - näiteks joonis 25 rakenduse sees navigeerimise kohta. Lisana olevate näidete põhjal on igaühel võimalik abi saada ja oma tööd kontrollida. Mõned küsimused autorile: Mitmedki rakendused on võimalik teha nii WAPi, mobiilisisese brauseri kui Java Micro editioni abil. Millised oleksid ühe või teise mooduse eelised ja puudused, mille järgi valida sobiv keskkond? Millistesse mobiilseadmetesse on autor oma rakendusi püüdnud paigaldada? Kas ja milliseid probleeme (nt. ujukomaarvud) on seal ette tulnud, kuidas neid muresid lahendatud? Millest soovitab algajal mobiiliprogrammeerijal oma rakenduse koostamist alustada? Kuidas autor ise mobiilirakenduste juurde jõudis ning kas ja mida sel teel soovitaks teistel muud moodi teha? Kokkuvõttes leiab retsensent, et autor on hakkama saanud vajaliku tööga. Hindeks soovitan vähemalt 4, kuid eduka kaitsmise korral ei välista ka kõrgeimat hinnet. Jaagup Kippar Tallinna Ülikooli Informaatika instituudi lektor Tallinnas 28. mail 2008