Skip to content
Snippets Groups Projects
Commit 74153954 authored by Erkki Kaila's avatar Erkki Kaila
Browse files

eka versio

parents
Branches
No related tags found
No related merge requests found
img/kaannos.png

8.35 KiB

# Viikko 1 - Ohjelmakoodin editointi, kääntäminen ja debuggaus
Tarkastellaan kurssin ensimmäisellä viikolla Java-tiedostojen muokkausta, kääntämistä ja suorittamista ja virheiden etsimistä ohjelmista. Samankaltaisiin asioihin tutustuttiin Pythonilla kurssilla Ohjelmoinnin perusteet.
### Oppimispäämäärät:
*
## 1. Javan asennus
Ennen kuin Java-ohjelmia voidaan ajaa omalla koneella, tulee koneelle asentaa Java-kääntäjä ja tulkki. Huomaa, että pelkät Javan ajonaikaiset kirjastot (JRE) eivät riitä ohjelmien kääntämiseen.
Java Development Kitin (JDK) voit asentaa lataamalla paketin joko
* [Oraclen sivuilta](https://www.oracle.com/java/technologies/javase-downloads.html)
* [Open JDK:n sivuilta](https://jdk.java.net/)
* [Adoptium Working Groupin sivuilta](https://adoptium.net/)
ViLLEssä on käytössä Javan versio 11, mutta voit asentaa koneellesi uusimman version (tällä hetkellä 19 on juuri julkaistu). Kurssilla käytettävien ominaisuuksien osalta versioissa ei ole merkittäviä eroja.
Koneessa voi olla samanaikaisesti useampia Java-versioita. Tämä voi joskus tuottaa ongelmia tiettyjen ohjelmien kääntämisessä - version pystyy kuitenkin (yleensä) valitsemaan Java-kehitysympäristössä erikseen.
Muista asentaa JDK ladattuasi sen koneellesi. Asennus käynnistyy yleensä esimerkiksi tuplaklikkaamalla ladattua tiedostoa.
Kiinnitä huomiota mihin kansioon Java asennetaan.
**Huom!** Laita rasti kohtaan "Include Java in build path" (tai jokin vastaava), jos asennusohjelma tarjoaa tällaista.
# 2. Java-lähdekoodi
Java-ohjelma kirjoitetaan tekstitiedostoon, jonka pääte on .java. Tiedosto saa sisältää vain unicode-muotoista Java-lähdekoodia, ei mitään muuta.
Tiedostosta pitää löytyä sen nimen mukainen julkinen luokka. Jos meillä esimerkiksi olisi Java-lähdekooditiedosto `Esimerkki.java`, tiedostosta pitäisi löytyä julkinen luokka `Esimerkki`:
```java
public class Esimerkki {
// Luokan sisältö tässä
}
```
Vastaavasti tiedostosta `Opiskelija.java` pitäisi löytyä julkinen luokka `Opiskelija`:
```java
public class Opiskelija {
// Luokan sisältö tässä
}
```
## Lähdekoodi ja tavukoodi
Javan lähdekoodia ei voi suorittaa sellaisenaan. Sen sijaan lähdekoodi pitää kääntää *tavukoodiksi*, jota voidaan ajaa Javan virtuaalikoneessa (JVM, Java Virtual Machine).
Tämä tarkoittaa, että samoja Java-ohjelmia voidaan suorittaa missä tahansa ympäristössä, jolle löytyy tällainen virtuaalikone. Java lisäksi myös eräitä muita kieliä voidaan kääntää Javan tavukoodiksi. Esimerkkejä tällaisista kielistä ovat esimerkiksi [Scala](https://www.scala-lang.org/) ja [Kotlin](https://kotlinlang.org/).
Kuva 1 havainnollistaa asiaa:
<img src="img/kaannos.png" alt="Käännösprosessi lähdekoodista tavukoodiksi">
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment