Java ME

sovellusympäristö

Java Platform, Micro Edition eli Java ME (edelliseltä nimeltään J2ME) on Sun Microsystemsin kehittämän Java-teknologian kevyehkö sovellusympäristö, joka on tarkoitettu sulautettujen ja ominaisuuksiltaan rajoitettujen laitteiden ohjelmointiin. Java SE -alustaan verrattuna yksi ohjelmoijan näkökulmasta merkittävimmistä eroista on Java ME:n rajoittuneemmat luokkakirjastot. Java ME on muutenkin supistettu pitäen mielessä resurssien rajoittuneisuus, joten esimerkiksi matkapuhelimien pelejä ohjelmoitaessa otetaan huomioon näytön ja näppäimistön rajoitukset.

Konfiguraatiot muokkaa

Java ME on jaettu laitteiden suhteen kahteen konfiguraatioon. CDC (engl. Connected Device Configuration) on tarkoitettu verkkoon kytketyille laitteille, kuten jääkaapeille, televisioille, kommunikaattoreille. CLDC (engl. Connected, Limited Device Configuration) on tarkoitettu vielä rajoittuneemmille laitteille, kuten matkapuhelimille, kämmenmikroille jne.

Eräs huomionarvoinen seikka on, että CLDC 1.0 ei vaadi laitteistolta tukea liukuluvuille. CLDC 1.1 tuo kuitenkin ne ohjelmoijan käyttöön.

Profiilit muokkaa

Java ME tukee niin kutsuttuja profiileja, joilla mahdollistetaan ohjelmointi tietynlaisille laitteille niin, että ne toimivat kaikissa kyseisen profiilin alaisissa laitteissa. Tällaisia profiileja ovat esimerkiksi MIDP (engl. Mobile Information Device Profile), jota käytettäessä sovellukset ovat teoriassa ajettavissa kaikissa sitä tukevissa matkapuhelimissa.

MIDP muokkaa

  • MIDP 1.0 (2000)
  • MIDP 2.0 (2002)
  • MIDP 3.0 (2009)

Useissa Nokian puhelimissa on käytetty MIDP-profiiliversioita 2.0 ja 2.1.

Virtuaalikone muokkaa

Java ME -sovellukset (kuten Java SE) vaativat toimiakseen virtuaalikoneen. KVM (Kilo Virtual Machine) on Sunin virtuaalikone CLDC:n ja MIDP:n alle. KVM on kooltaan erittäin pieni, alle 100 kilotavun kokoinen virtuaalikone, ja siksi omiaan juuri Java ME:n kanssa käytettäväksi. Nimenomaan pienen kokonsa vuoksi Sun antoi virtuaalikoneelleen "etuliitteen" Kilo.

Turvallisuus muokkaa

Turvallisuus on Java ME:ssäkin tärkeä asia. Vaikka Java SE sisältää hyvät turvaominaisuudet, ovat ne aivan liian raskaat Java ME:ssä käytettäviksi. Turvallisuusominaisuuksien pääpiirteisiin kuuluu niin sanottu "hiekkalaatikko", jossa ohjelmia ajetaan. Näin estetään ohjelmien pääsy tämän rajauksen ulkopuolisiin ominaisuuksiin, kuten esimerkiksi matkapuhelimissa GSM-koodekkiin. Tämän lisäksi kaikista suoritettavista luokista tarkistetaan, että ne ovat oikeaoppisesti toteutettuja. Sovellukset eivät voi myöskään viitata oman muistialueensa ulkopuolelle.

Aiheesta muualla muokkaa