Nimetus: Objektorienteeritud programmeerimine Java baasil
Nimetus inglise keeles: Object Oriented Programming in Java
Üldmaht: 14 tundi loenguid, 16 t. harjutusi, 30 t. iseseisvat tööd (miniprojekt).
Kestvus: 4 õppenädalat intensiivkursusena: 6L+2H, 4L+4H, 4L+4H, 6H+2A.
Ainepunkte: 1,5 Hindamisviis: A Õpetamisaeg: kevadsemester (K)
Lühike sisukirjeldus:
Kursus annab ülevaate objektorienteeritud programmeerimise (OOP) põhimõistetest ning nende kasutamisest programmeerimiskeeles Java. Käsitletakse tarkvaraprojekti kavandamist ja keele UML mõningaid vahendeid, s.h. klassiskeeme. Vaatluse alla tulevad paralleel- ja võrguprogrammeerimise elemendid.
Rühmatöö vormis realiseeritakse keele Java vahenditega miniprojekt.
Eesmärk: Anda
Java programmeerijatele
lisateadmisi ja oskusi OOP metoodika kasutamiseks. Tutvustada neid
keele Java
vahendeid, mis jäävad algtaseme kursuste programmist välja (näit.
liidesed,
abstraktsed klassid, konstruktorid, paralleel- ja
võrguprogrammeerimise
elemendid).
Eelteadmised/eeldused: Programmeerimisoskus algtasemel,
soovitavalt
keeles Java (näit. ITK õppeaine I200 mahus). Inglise keele oskus
tehnilise
dokumentatsiooni lugemiseks.
Sihtgrupp: Programmeerijad (algtase), tarkvaraprojektide
kodeerijad,
Java huvilised.
Tulemused ehk teadmised/oskused peale kursuse läbimist: Kursuse läbinu tunneb OOP põhimõisteid ning suudab neid Java-põhises tarkvaraprojektis rakendada.
Iseseisva töö ajakava ja kirjeldus: Loengutes käsitletud teemade iseseisev süvendamine toimub kursuse vältel, lisaks sellele tuleb rühmatööna realiseerida lihtne Java projekt.
Hindamiskriteeriumid: Arvestuseks tuleb aktiivselt osaleda loengutel ja harjutustundides ning miniprojekti realiseerimises. Õppurid, kellel ei õnnestu saada arvestust jooksva töö põhjal, võivad teha eraldi arvestustöö.
Õppekirjandus (lisamaterjal):
Teemajaotus:
Õppenädal |
Teema |
6L 2H |
OOP põhimõisted: klass, isend, atribuut (muutuja), meetod, kapseldus, pärilus, üldistamine ja spetsialiseerimine, polümorfism (üledefineerimine ja ülekate), klassimuutuja ja klassimeetod, konstruktor ja destruktor, ühene ja mitmene pärimine, liides, abstraktne klass. Abstraktsed andmetüübid. OOP mõistete realiseerimine keeles Java. Klassi struktuur Javas, konstruktorid. |
4L 4H |
Tarkvaraprojekti kavandamine - modelleerimine, projekti vaated, keele UML elemente. Klassiskeem ja OOP. Veakäsitlus ja erindiklassid keeles Java. |
4L 4H |
Paralleelprogrammeerimise elemente – Java lõimeklassid. Fail ja voog. Tootja-tarbija ülesanne. Võrguprogrammeerimise elemente – UDP datagramm, TCP pistikliides, Interneti teenused. Klient-server lahenduse programmeerimine. |
6H 2A |
Miniprojekti realiseerimine ja esitlemine. Arvestus. |
Õppejõud: PhD Jaanus Pöial