Java: ohjelmointiympäristö¶
Osaamistavoitteet
Tutustutaan kurssin ohjelmointikieleen Javaan ja tarvittavaan ohjelmointiympäristöön. Käsittelemme myös, miksi kurssin ohjelmointikieli on juuri Java. Osion jälkeen osaat pystyttää itsellesi ohjelmointiympäristön kurssityöskentelyä varten, ja tehdä ja suorittaa yksikertaisen Java-ohjelman.
Miksi Java?¶
Olet todennäköisesti opiskellut ohjelmoinnin perusteet Python-ohjelmointikielellä. Tampereen yliopistossa Ohjelmointi 1 käyttää Pythonia ja Ohjelmointi 2 C++:aa ohjelmointikielinään. Miksi sitten Ohjelmointi 3 ottaa jälleen uuden kielen käyttöön?
Python ja C++ ovat hyödyllisiä kelle tahansa tietotekniikan alalla mutta ohjelmistoalan asiantuntijan on hyvä tuntea ohjelmointikieliä laajasti. Lisäksi Java on yksi suosituimmista ohjelmointikielistä maailmanlaajuisesti. TIOBE-indeksi listaa ohjelmointikielten suosiota kuukausittain ja sillä Java on vakiinnuttanut paikkansa suosituimpien kielen joukossa.
Tärkeimpänä syynä Javan valintaan on kuitenkin sen sopivuus kurssin osaamistavoitteiden opiskeluun. Java on alustariippumaton eli se pyrkii olemaan “write once, run anywhere” korkean tason ohjelmointikieli. Java on myös paradigmaltaan oliokieli ja siten tarjoaa mahdollisuuden opiskella kurssin keskeisiä asioita suoraan kielen tarjoamien rakenteiden avulla. Javan syntaksi muistuttaa C++:aa ja C:tä ja on siten varsin helppo oppia tässä kohtaa opintoja. Java tarjoaa myös laajan kokoelman valmiita ohjelmakomponentteja Java luokkakirjastossa eli Java API -toteutuksina. Se on siis sekä hyödyllinen ammatillisesti että piirteiltään ihanteellinen kurssin tarpeisiin.
Java JDK¶
Voidaksesi toteuttaa ohjelmia Javalla, tarvitset Java-kääntäjän (javac) ja -tulkin (java). Näihin tutustutaan syvällisemmin hiukan myöhemmin, mutta ensin laitetaan perusasiat kuntoon, jotta päästään koodaamaan. Sekä tulkki että kääntäjä kuuluvat Java Development Kit (JDK) -ympäristöön. JDK on Javan kehitysympäristö Java sovellusten ja komponenttien toteuttamiseen. Se sisältää työkalut Java ohjelmien kehittämiseen, testaamiseen ja ajamiseen.
JDK löytyy yliopiston ympäristöistä ja etätyöpöydältä. Omalle tietokoneellesi saattaa tarvita asentaa JDK.
Javasta on myös olemassa Java Runtime Environment (JRE), joka on tarkoitettu loppukäyttäjille pelkästään Java-ohjelmien suorittamiseen tulkilla. JRE:iä ei tule asentaa, koska tässä ympäristössä ei ole muun muassa kääntäjää. JDK:n voi asentaa koneelle, jolla on jo JRE, sillä JDK:n asennusohjelman pitäisi osata muokata koneesi asetuksia siten, että komentoikkunassa kutsutaan nimenomaan JDK:ssa olevaa tulkkia.
JDK:n asentaminen¶
Ensimmäiseksi kannattaa tarkistaa, onko JDK jo asennettuna. Tämän voi tehdä mm. ajamalla
komentorivillä komennot javac -version
ja java -version
.
JDK:n pääversiot ovat saatavilla Oraclen verkkosivuilta. Uusin versio on 19. Oraclen Java lisenssi sallii maksuttoman henkilökohtaisen ja kehityskäytön. Lisäksi tarjolla on täysin vapaa OpenJDK lisenssillä GPLv2+CPE. Jälkimmäinen on asennettuna yliopiston ympäristöihin.
JDK asentuu valitsemalla tarjollaolevista latausvaihtoehdoista käyttöjärjestelmäsi ja sille sopiva paketti. Windows-käyttäjälle helpoin on ladata asennusohjelma eli .exe-päätteinen tiedosto. Maceille helpoin on levykuvan lataaminen eli .dmg-päätteinen tiedosto. Yksityiskohtaiset ohjeet asennukseen eri alustoille löydät Oraclelta Installation instructions alta.
Yksinkertainen Java-ohjelma kirjoitetaan editorilla
kooditiedostoksi. Javassa tiedoston pääte on .java
. Komentoriviltä
Java-ohjelman kääntämiseksi ja ajamiseksi tarvitaan javac
ja
java
. Ensimmäinen kääntää ohjelmakoodin tavukoodiksi ja
jälkimmäinen ajaa ohjelman. Käytännössä komentorivin sijaan usein
käytetään integroitua ohjelmointiympäristöä (IDE), joka sisältää editorin ja
kääntäjän lisäksi muuta koodaamista helpottavaa toiminnallisuutta
kuten debuggerin. Aiemmilla kursseilla on käytetty pyCharmia ja Qt
Creatoria. Javalle sopivia vaihtoehtoja olisivat mm. Eclipse, IntelliJ
IDEA, Visual Studio Code ja NetBeans. Kurssin esimerkki-IDEksi näistä
on valittu NetBeans, johon tutustutaan seuraavaksi. Samalla tehdään
ensimmäinen Java-ohjelma.