Ohjelman kääntäminen

Miksi?

Koska tietokoneen suoritin, prosessori, ei suoraan ymmärrä ohjelmointikieltä, on ohjelma käännettävä ennen suoritusta suorittimen ymmärtämälle kielelle.

Olemme aiemmin ajatelleet, että ohjelman kirjoittaminen on kuin kirjoittamista kiinankielen kääntäjälle, joka ei osaa kuin rajoitetusti suomea. Tätä henkilöä vastaa tietokonemaailmassa ohjelmointikielen kääntäjä. Se on ohjelma, joka lukee ohjelmointikielellä kirjoitetun ohjelman tekstin ja kirjoittaa sen toiseen tiedostoon suorittimen ymmärtämällä kielellä. Javan tapauksessa kääntäjän tuottama kieli ei ole aivan konekieltä. Tätä piirrettä käsitellään seuraavassa luvussa.

Kääntäjäohjelma osaa kääntää vain yhtä ohjelmointikieltä. Niinpä jokaiselle ohjelmointikielelle (esim. Java, C++, Pascal) on omat kääntäjänsä. Et voi kääntää Java-ohjelmaa esim. Pascal-kääntäjällä.

Kuva

Miten?

Java-kielen kääntäjäohjelman käynnistäminen tapahtuu komennolla javac (+tiedostonimi!). Tämä edellyttää, että olet komentorivipohjaisessa tilassa (esim. Windows-käyttöjärjestelmissä Dos-promptissa). Lisäksi sinun on tietenkin oltava siinä hakemistossa, jossa käännettävä ohjelma on.

Kääntäjäohjelmalle on käynnistämisen yhteydessä kerrottava, mikä tiedosto halutaan kääntää. Kun haluat kääntää aiemmin esitellyn Hei-ohjelman, joka on tiedostossa Hei.java, annat seuraavan käskyn:

      javac Hei.java
    

Kun olet kirjoittanut tämän käskyn, Java-kääntäjä tarkistaa ensin, että tekemäsi ohjelma on täsmälleen Java-kielen sääntöjen eli syntaksin mukainen. Pienikin kirjoitusvirhe tekemässäsi ohjelmassa aiheuttaa sen, ettei kääntäjä suostu kääntämään ohjelmaasi. Tällöin saat virheilmoituksen, joka kertoo ohjelmastasi löytyneet virheet.

Java-kääntäjä ei anna mitään ilmoituksia, kun kääntäminen onnistuu. Kun onnistuneen kääntämisen jälkeen katsot, mitä tiedostoja työhakemistossasi on, sinne on ilmestynyt uusi tiedosto Hei.class. Tämä on suoritettava ohjelma, jonka suorittaminen neuvotaan seuraavassa luvussa.