Java-ohjelmointi
Opi Javan kivijalkataidot
Olet juuri tutustumassa Java-kursseistamme pitkäikäisimpään ja suosituimpaan! Syy suosioon on selvä: Kurssille on suodatettu noin viidentoista vuoden aikana juuri sellainen sisältö, jota sinä tarvitset modernissa Java-kehityksessä – oli kyse sitten Java EE -palvelinohjelmoinnista, Spring Boot kehityksestä tai Android-koodauksesta.
Osaatko:
- Valita oikean kokoelman eri tilanteissa?
- Käyttää Stream APIa esimerkiksi kokoelman datan läpikäymiseen
- Yhdistää suuria merkkijonomääriä tehokkaasti?
- Kirjoittaa hyvän tyylin mukaisen JUnit-yksikkötestin?
- Lokalisoida virkkeen, jonka taivutus vaihtelee eri monikkomuodoissa?
- Hakea dataa tietokannasta?
Kurssin jälkeen osaat!
Kurssi soveltuu kaikille, jotka tulevat osallistumaan Java-pohjaisten sovellusten toteuttamiseen.
Esitiedot: Olio-ohjelmoinnin peruskäsitteiden hallinta on kurssin suorittamisen kannalta erittäin suositeltavaa. Lisäksi oletetaan osattavaksi joko C#-, C- tai C++-kielen ohjausrakenteet. Kurssi “Java-kielen ja olio-ohjelmoinnin perusteet” antaa hyvän pohjan tämän kurssin suorittamiselle.
Testi: Kurssi auttaa valmentautumaan sertifiointeihin Oracle Certified Associate, Java SE 8 Programmer (OCAJP) ja Oracle Certified Professional, Java SE 8 Programmer (OCPJP). Vastaavat testinumerot ovat 1Z0-808 (OCJA, Java 8) / 1Z0-809 (OCJP, Java 8) / 1Z0-813 (Upgrade to Java SE 8 OCP). Valmentautumisen tueksi suosittelemme lisäksi kurssia “Java-kielen ja olio-ohjelmoinnin perusteet”, asiakaskohtaisena järjestämme myös sertifiontitestiin preppauskoulutusta.
Koulutuksen tarkempi sisältö:
Java-kielen erityispiirteitä
- Tärkeimmät teknologiat, JDK-versiot ja työkalut
- Paketit (package) ja niiden käyttö
- Javadoc
- Enum-tyypit ja varargs
Javan peruskirjastot
- System, Console ja Class
- Kaikkien luokkien kantaluokka: Object ja sen metodit
- String ja merkkijonojen käsittelyn perusmetodit
- Merkkijonojen yhdistäminen: StringBuilder
- Merkkijonokäsittelyn tehokkuuskysymykset
- Primitiivityyppien käsittelyluokat, muunnokset
Poikkeukset
- Virhetilanteiden hallinta poikkeuksilla
- Omien poikkeusluokkien luonti
- Poikkeusten ketjuttaminen
- Sovelluspoikkeus vs. järjestelmäpoikkeus
IO ja tiedostokäsittely
- Paketit java.io, java.nio ja java.nio.file
- Tietovirrat, lukijat ja kirjoittajat
- Polut
- Tiedostojen luku ja kirjoitus
- Tiedostojen hallinta
- Hakemistojen listaus
Kokoelmat
- Kokoelmaluokkien tyypit: Collection, List, Set ja Map
- Kokoelmien apuluokat: Collections ja Arrays
- List-rajapinnan toteutukset ja toiminnan erot
- Generics: oman metodin tai tyypin luominen
- Iterator-rajapinta ja sen käyttö
Kokoelmat jatkuu…
- Set-kokoelmien käyttö
- Map-tyypit ja niiden erot
- muunnokset kokoelmien ja taulukoiden välillä
- Järjestäminen ja vertailu
- kokoelmien algoritmien suorituskyky ja oikean kokoelman valinta
Lambdat
- Functional interface
- Lambdat vs. nimettömät sisäluokat
- Lambda-lausekkeiden syntaksi
- Lambda-lausekkeiden käyttö
Java 8 Stream API
- Streamien peruskäsitteet
- Streamin luonti
- Olio-streamit vs. primitiivityyppien streamit
- Toiminnallisuus, filtteröinti yms.
- Päättävät toiminnallisuudet, koonti
- Lambdojen ja metodiviittausten käyttäminen
JUnit-yksikkötestaus
- yksikkötestauksen käsitteet
- yksikkötestien kirjoittaminen JUnitilla
- testien suorittaminen
- Hamcrest ja luettavammat testit
Kansainvälistäminen (I18n)
- Terminologia: kansainvälistäminen/internationalisointi, kotoistaminen/lokalisointi, kielialue/lokale
- Lokalisoinnin perusluokat: Locale ja ResourceBundle
- Lokalisoitujen merkkijonojen määrittäminen .properties-tiedostoissa tai Java-koodissa
- Kielialueen mukainen järjestäminen: Collation
- Muotoilun apuluokat: NumberFormat, MessageFormat ja ChoiceFormat
Päivämääräkäsittely
- Perusluokka: Date
- Päivämäärien käsittely: Calendar
- Päivämäärien muotoilu: DateFormat
- Java 8 päivämäärät: LocalDate, LocalTime ja LocalDateTime
- Päivämäärien muotoilu: DateTimeFormatter
- Kestoa kuvaavat luokat: Period ja Duration
JDBC-tietokantakäsittely
- Ajurit ja niiden konfigurointi
- Peruskäsitteet: yhteys, lause, tulosjoukko
- Tulosjoukkojen käsittely
- PreparedStatement
- Transaktiot
Liite: Työkalut – Apache Ant ja Apache Maven
- ominaisuudet
- suorittaminen
- konfiguroinnin perusteet
Liite: Jar-tiedostot
- Jar-tiedostojen luonti
- Jar-työkalu
- Manifest-tiedostot
- Jar vs. war vs. ear
Liite: Säieohjelmointi
- Thread
- Runnable
- Synkronointi
- Executor framework
- Callable ja Future
Avainsanat: Apache Maven, I/O, JAR-paketointi, Javan peruskirjastot, JDBC, JDK, JUnit, Kokoelmat, Lambda, Lokalisointi, Merkkijonokäsittely, Päivämääräkäsittely, Poikkeukset, Säikeet, Sertifoituminen, Yksikkötestaus