Web-julkaisemisen opas, luku 3 Lisukkeet: Mitä kaikkea voisikaan lisäksi tehdä:

Java-sovelmat ja Flash-tekniikka

Java

Java on monipuolinen ohjelmointikieli, jolla voidaan muun muassa toteuttaa Web-sivuihin liitettäviä ohjelmia, joita sanotaan sovelmiksi (applet). Niillä voidaan periaatteessa tehdä hyvin hienoja ja havainnollisia, "eläviä" ja vuorovaikutteisia esityksiä.

Java on aivan eri kieli kuin JavaScript, joskin joitakin samanlaisia piirteitä niissä on. Nimien samankaltaisuus on ilmeisesti tarkoituksellisen hämäävää.

Sovelma kirjoitetaan Java-kielellä tekstitiedostoon. Se käännetään sopivalla ohjelmalla, Java-kääntäjällä, jolloin saadaan ns. luokkatiedosto. Sovelma liitetään Web-sivuun kirjoittamalla HTML-dokumenttiin applet-elementti, joka viittaa sovelmaa vastaavaan luokkatiedostoon ja voi sisältää myös sovelmalle annettavia syöttötietoja, parametreja.

Selain voi toteuttaa applet-elementin varaamalla selaimen ikkunasta osan sovelman "suoritusalustaksi" ja suorittamalla sovelman. Täten siis selain toteuttaa, jos toteuttaa, Java-sovelman, ilman, että sillä on vuorovaikutusta palvelimen kanssa sen jälkeen, kun selain on saanut sovelman koodin palvelimelta. Koneeseen ladattua sovelmaa voidaan tämän takia käyttää myös ilman Internet-yhteyttä ("offline").

Kaikki selaimet eivät tue Javaa. Lisäksi niistä, jotka tukevat, voidaan tuki disabloida. Kummassakin tapauksessa selain esittää, tai sen ainakin tulisi esittää, applet-elementin sisältö, jollaiseksi sivuntekijä siis voi kirjoittaa esimerkiksi staattisen kuvallisen tai sanallisen selityksen siitä aiheesta, jonka sovelma pyrkii esittämään havainnollisemmin.

Arto Wikla on kirjoittanut laajahkon esityksen Ohjelmoinnin perusteita Java-kielellä, joka sisältää myös useita esimerkkejä, yksinkertaisimmista kokeiluista alkaen. Ks. myös Lasse Lehtimäen esitystä Yleiskatsaus Java-kieleen osa Lappeenrannan TKK:n kurssilla Internet-ohjelmointi esitettyä aineistoa. Pitemmälle ehtineille voi sopia TY:n Ohjelmointi II (Java-kielellä) kurssin aineisto.

Pankaj Kamthan on koonnut laajahkon kokoelman opetuskäyttöön vakavassa mielessä tehtyjä sovelmia: Java Applets in Education.

Flash

Yhtenä vaihtoehtona Javan käytölle on Macromedian Flash-tekniikka. Perusidea on sama siinä mielessä, että HTML-dokumenttiin "upotetaan" toiminnallisesti erillinen osa. Flashin yhteydessä käytetään kuitenkin object-elementtiä (jota voisi kyllä periaatteessa käyttää myös Java-sovelman upottamiseen) tai (HTML-spesifikaatioihin kuulumatonta) embed-elementtiä. Flashin yhteydessä käytettävä dataformaatti on Shockwave Flash (SWF).

Käytettävyystutkija Jakob Nielsen on arvioinut, että Flash-tekniikka huonontaa sivujen käytettävyyttä, ja esittää kolme perustelua: se houkuttelee suunnittelemaan sivut käytettävyyden kannalta väärin; se rikkoo tavan, jolla vuorovaikutuksen on tarkoitus toimia Webissä; ja sen tekeminen vaatii paljon voimavaroja, joille olisi parempaakin käyttöä (Flash: 99% Bad).

Vaikka suurin osa selaimista jo tukeekin Flashiä, on järkevää tarjota sille toimiva vaihtoehto. Sovellettaessa terveitä suunnitteluperiaatteita tehdään ensin yksinkertainen versio, joka "toimii kuin junan vessa", ja sitten ruvetaan harkitsemaan laajennuksia. Esimerkiksi jos jonkin tekstikappaleen tai kuvan sanoma halutaan esittää Flashillä elävämmin, niin tehdään sitten Flash-vaihtoehto ja kirjoitetaan kappaleen, kuvan tms. ympärille kirjoitetaan sopiva object-elementti. Näin tehden sivu saadaan nopeasti toimivaksi ja se toimii sen yksinkertaisemman vaihtoehdon varassa silloinkin, kun selain ei tue Flashiä tai tuki on siitä disabloitu esim. tehokkuussyistä.

Hyvä johdatus Flashin käyttöön on Kate Levyn Working With Flash.

Suomeksi Flashistä ei ole vielä kirjoitettu paljoakaan. Seuraavassa muutamia suomenkielisiä Web-sivuja aiheesta:

Kirjallisuudesta mainittakoon Docendon julkaisema suomenkielinen Flash MX Toolkit.