Prakside kava
Tavarühmade materjal
Praktikum | Kodus | Praktikumis | Harjutused |
---|---|---|---|
Praks 1 (11.02) | Lugeda Sissejuhatus (alates "Esimene Java programm") Lugeda Java põhikonstruktsioonid Abiks on ka 1. ja 2. loengu slaidid ja videod IDEA setup + run application | Aine korraldus Tutvumisring IDE tricks: psvm, sout | Ülesanded: * (soovituslik) praktikumi materjalist P5, P7 lisalugemist |
Praks 2 (13.02) | Lugeda Objektid. Klassid. | koduste tööde esitamisest IDE tricks: alt+insert, rename symbol, ctrl+q, reformat code, reading javadoc, /**, reading source class imports, Arrays.toString, cli-args | Ülesanded: praktikumi materjalist P6 harjutustest H2, H4 lisalugemist |
Praks 3 (18.02) | Lugeda Sõned. Failid. Listid. | code style: muutujate ja meetodite nimed oracle-i poolt soovitused google-ilt value vs reference IDEA advanced: iter, fori, debugging | Ülesanded: praktikumi materjalist P1, P8 ning harjutustest H3 silumisest |
Praks 4 (20.02) | Lugeda Polümorfism. Liidesed. | List vs ArrayList? List.of, Arrays.asList, Collections.emptyList IDE tricks: extract method/var, ctrl+b/ctrl+alt+b, show usages, ctrl+alt+left/right, debugger eval expression | Ülesanded praktikumi materjalist P* Võib alustada harjutustega, need tuleb kodus lõpetada ja esitada osana kodutööst. |
Praks 5 (25.02) | Lugeda Ülemklassid. Alamklassid. Abstraktsed klassid. Loe üldist git sissejuhatust (algusest kuni "How GitHub fits in") Huvilisetele, kuidas git toimib | IDE tricks: ctrl+i, ctrl+o dynamic dispatch, super.m() vs this.m() git intro, kodus lahenda ülesandekomplekt | Ülesanded praktikumi materjalist P* välja arvatud 4,5 |
Praks 6 (27.02) | Lugeda Vood. Lisaks lugeda primitiividest ja nende mälukasutusest | flatten datastreamide kirjutamine, writeUTF seletus IDE tricks: thread dump, Files.readAllBytes, Files.readString rühmatööde tutvustus | Ülesanded praktikumi materjalist P4, P8 ning harjutustest H5 tcp/ip, network protocols https://github.com/mbakhoff/sockets-template |
Praks 7 (04.03) | Lugeda Lõimed. | final fields deadlock näide, thread dump https://gist.github.com/mbakhoff/0fd51bfd653b778fcabc Executors fixedpool näide Item 66: Synchronize access to shared mutable data | Ülesanded praktikumi materjalist 2, 3, 4, 5, 8 |
Praks 8 (06.03) | Lugeda Veahaldus. | rethrow, runtime exceptionisse wrapimine IDE tricks: conditional breakpoint, exception breakpoint, ctrl+tab/ctrl+e/ctrl+n | Ülesanded praktikumi materjalist P3, P6, P9 ning harjutustest H4, H8 |
Praks 9 (11.03) | Lugeda Graafika. Sündmused. | awt vs swing vs javafx (link) scene graph, layouts | Ülesanded graafikast: P3, P6 ning harjutustest H2 Sündmustest P1, P4 ning harjutustest H1, H3 |
Praks 10 (13.03) | Lugeda Andmestruktuurid. | koduste ülesannete analüüs (bugid) eksamil peab teadma: ArrayList, LinkedList, HashSet, TreeSet, LinkedHashSet, ArrayDeque, HashMap, TreeMap, LinkedHashMap natural ordering. "How does a hashmap work?" (link) Collections framework (link) ja analoogid (link) | Ülesanded praktikumi materjalist P1, P2, P4, P5, P7 |
Praks 11 (18.03) | KT1 kordamine | fori vs iter, extract variable/parameter, täisarvudega jagamine, static fields, string equals vs ==, generics / raw types, instance vs static methods, dynamic dispatch, this.m() vs super.m(), twr, catch algoritm, Files.readAllLines, Files.write | Voogude harjutustest ülesanded 1, 3, 4 Üks KT näidisülesanne |
Süvendusrühma materjalid
Praktikum | Kodus | Praktikumis | Harjutused |
---|---|---|---|
Praks 12 (20.03) | Lugeda Packaging + maven | maven plugin creation guide useful maven plugins multimodule projects with maven useful maven commands artefacts repository | Ülesanded: materjalist loome maven plugina juhendi järgi |
Praks 13 (25.03) | Lugeda Classpath, resource loading | Ülesanded: materjalist | |
Praks 14 (27.03) | KT1. Tutvuge enne kontrolltööd ka KT reeglitega | Ülesanded avalikustatakse moodle-is. Esitada tuleb moodlisse! ja igaks juhuks meiliga juhendaja aadressile. Ärge unustage esitada ka lahenduse logid Moodle'i kaudu. | |
Praks 15 (01.04) | Lugeda Serialization, JSON, XML | Ülesanded: materjalist | |
Praks 16 (03.04) | praktikumi ei toimu | ||
Praks 17 (08.04) | Lugeda Testing with JUnit; Mock objects, constructor injection | Ülesanded: materjalist | |
Praks 18 (10.04) | Inner classes, lambdas, method references Lugeda Introduction ning Stream API, harjutused | Hacking lambda expressions | Ülesanded: materjalist |
Praks 19 (15.04) | Jätkame Stream-idega ja ülesannetega: | Ülesanded: Stream API, harjutused | |
Praks 20 (17.04) | Lugeda JDBC: H2 embedded, prepared statement, transactions | JDBC: H2 embedded, prepared statement, transactions, SQL | Ülesanded: materjalist |
Praks 21 (22.04) | Lugeda JPA, Hibernate ORM | JPA, ORM | Ülesanded: materjalist |
Praks 22 (24.04) | Lugeda Crypto basics | Ülesanded: materjalist | |
Praks 23 (29.04) | Lugeda Annotations + reflection | Java Reflection API | Ülesanded: materjalist |
Praks 24 (01.05) | Praktikumi ei toimu, kevadpüha | ||
Praks 25 (06.05) | Lugeda Visitor pattern | Visitor pattern, GOF patterns | Ülesanded: materjalist |
Praks 26 (08.05) | KT2 kordamine | text vs binary streams, Files.readAllLines/write, list vs map vs set, File.exists vs Files.exists, exceptioni subclass loomine | Ülesanded: Voogude harjutustest ülesanne 6 Erindite harjutustest ülesanded 2, 7 veel üks KT näidisülesanne |
Praks 27 (13.05) | Lugeda Protsessidest | Protsessid | Ülesanded: materjalist |
Praks 28 (15.05) | KT2. Tutvuge enne kontrolltööd ka KT reeglitega | Ülesanded avalikustatakse moodle-is. Esitada tuleb moodlisse! ja igaks juhuks meiliga juhendaja aadressile. Ärge unustage esitada ka lahenduse logid Moodle'i kaudu. | |
Praks 29 (20.05) | Lugeda Profileerimisest | Profiling with VisualVM; Garbage collection | Ülesanded: materjalist |
Praks 30 (22.05) | Eksamiks kordamine | Lõpusirge info (meil omad eksamile pääsemise tingimused vaadake kindlasti oma punktiseisu üle ja esitage kõik kodutööd!) Tutvuge eksami juhendiga | |
Praks 31 (27.05) | Praktikumi ei toimu, samal ajal on juba esimene eksamiaeg | ||
Praks 32 (01.05) | Rühmatööde esitlused | Praktikumis on rühmatöö esitluseks aega 7-8 minutit Esitluses võiksid osaleda kõik meeskonnaliikmed Lisaks õppejõule on hindamises oma roll ka teistel rühmadel. Valmistame praktikumiks küsitluse, kus oleks kõikide rühmade info. Kõik esinenud rühmaliikmed saavad esitluse eest võrdse hinde. Hindamise ankeet |