ITI0011: erinevus redaktsioonide vahel
Resümee puudub |
|||
| (ei näidata sama kasutaja 66 vahepealset redaktsiooni) | |||
| 1. rida: | 1. rida: | ||
= | <div style="color: red; font-size: 14pt;">Uus kursuse veebileht: http://courses.cs.ttu.ee/pages/ITI0011</div> | ||
<br /><br /><br /><br /><br /><br /> | |||
<table> | |||
<tr> | |||
<td style="width: 70px;"> | |||
[[Pilt:Java_logo_and_wordmark.svg.png|60px]] | |||
</td> | |||
<td> | |||
Ainekood: ITI0011<br> | |||
Link: http://lambda.ee/wiki/ITI0011<br> | |||
* ''' | Lektor: Ago Luberg | ||
Kontakt: ago.luberg ätt ttu.ee, TTÜ ICT-423<br> | |||
Konsultatsiooniaeg: N9.00, tuleb eelnevalt emailiteel kokku leppida!<br> | |||
Praktikumide ajad: E8 (ICT-404), T8 (ICT-501), K8 (ICT-404), N10 (ICT-401), N14.15 (ICT-401)<br> | |||
Venekeelse praktikumi lektor: Aleksandr Lenin<br> | |||
Kursus varasematel aastatel: [[ITI0011-S12 | 2012]], [[ITI0011-S11 | 2011]] | |||
</td> | |||
</tr> | |||
</table> | |||
== Teated == | |||
* <span style="color: #F00;">Tähelepanu</span>, 5. juuni eksami aeg ja koht on muutunud: eksam hakkab '''11.30''' ja ruum on '''ICT-411''' (IT-maja). | |||
* Kevadine eksam '''5. juunil (neljapäev) kell 11.30 ruumis ICT-411'''. Registreerimine ÕIS-is hiljemalt 4. juuni kell 12.00 | |||
** Eksamit saavad sooritada tudengid, kellel on eksamieeldus täidetud (kolm ülesannet kaitstud). | |||
** konsultatsioonid 28. mai kell 12.00 ja 4. juuni kell 12.00 ruumis ICT-411. Registreerimine kohustuslik: http://doodle.com/tbx47ydfpgzpqqd5 | |||
* [https://docs.google.com/spreadsheet/pub?key=0AiSJPpWnMYPZdDBxWHpIRlg5UVRmeEhSRlFhYVVSNFE&single=true&gid=3&output=html kodutööd-punktid] | |||
* '''Eksamiinfo on väljas''' | |||
* Kursuse '''RSS''' teated siin: http://groups.google.com/group/iti0011 | * Kursuse '''RSS''' teated siin: http://groups.google.com/group/iti0011 | ||
* [[ITI0011-S12 | ITI0011 eelmisel semestril (2012)]] | * [[ITI0011-S12 | ITI0011 eelmisel semestril (2012)]] | ||
* GOMOKU võistlusele laekus kolm tööd. Võistluse raames mängivad kõik mängijad omavahel läbi. Iga kahe mängija vahelised mängud viiakse läbi selliselt: 10x10 laual ükskord alustab üks (= mängib mustade nuppudega), teinekord teine; 20x20 laual samamoodi. Mängitakse 10 mängu (üldjuhul randomit ükski mängija ei kasuta, mis tähendab, et esimese mängu tulemus jääbki lõppseisuks). Tulemused ilmuvad jaanuari alguseks. | |||
'''GOMOKU Tulemused:''' | |||
<table border="1" style="border-collapse: collapse; text-align: center;"> | |||
<tr> | |||
<td colspan="2" rowspan="2"> </td> | |||
<td width="40">10x10</td> | |||
<td width="40">20x20</td> | |||
<td width="40">10x10</td> | |||
<td width="40">20x20</td> | |||
<td width="40">10x10</td> | |||
<td width="40">20x20</td> | |||
<th rowspan="2" width="60">Punktid</th> | |||
<th rowspan="2" width="40">Koht</th> | |||
</tr> | |||
<tr> | |||
<td colspan="2">P1</td> | |||
<td colspan="2">P2</td> | |||
<td colspan="2">P3</td> | |||
</tr> | |||
<tr> | |||
<td width="50">must</td> | |||
<td rowspan="2" width="50">P1</td> | |||
<td colspan="2" rowspan="2" bgcolor="black"></td> | |||
<td>5-5</td> | |||
<td>10-0</td> | |||
<td>5-5</td> | |||
<td>10-0</td> | |||
<td rowspan="2" style="font-weight: bold;">50</td> | |||
<td rowspan="2" style="font-weight: bold;">I</td> | |||
</tr> | |||
<tr> | |||
<td>valge</td> | |||
<td>5-5</td> | |||
<td>10-0</td> | |||
<td>5-5</td> | |||
<td>0-10</td> | |||
</tr> | |||
<tr> | |||
<td>must</td> | |||
<td rowspan="2">P2</td> | |||
<td>5-5</td> | |||
<td>0-10</td> | |||
<td colspan="2" rowspan="2" bgcolor="black"></td> | |||
<td>10-0</td> | |||
<td>0-10</td> | |||
<td rowspan="2" style="font-weight: bold;">30</td> | |||
<td rowspan="2" style="font-weight: bold;">III</td> | |||
</tr> | |||
<tr> | |||
<td>valge</td> | |||
<td>5-5</td> | |||
<td>0-10</td> | |||
<td>0-10</td> | |||
<td>10-0</td> | |||
</tr> | |||
<tr> | |||
<td>must</td> | |||
<td rowspan="2">P3</td> | |||
<td>5-5</td> | |||
<td>10-0</td> | |||
<td>10-0</td> | |||
<td>0-10</td> | |||
<td colspan="2" rowspan="2" bgcolor="black"></td> | |||
<td rowspan="2" style="font-weight: bold;">40</td> | |||
<td rowspan="2" style="font-weight: bold;">II</td> | |||
</tr> | |||
<tr> | |||
<td>valge</td> | |||
<td>5-5</td> | |||
<td>0-10</td> | |||
<td>0-10</td> | |||
<td>10-0</td> | |||
</tr> | |||
</table> | |||
5-5 tähendab, et kõik 10 mängu lõppesid viigiga. 10-0 tähendab, et mängija, kes on vastaval real, võitis mängijat, kes on vastavas veerus. 0-10 tähendab, et mängija, kes on vastaval real, kaotas mängijale, kes on vastavas veerus. | |||
Lisapunktid järgmiselt: | |||
* 120941 - 10p | |||
* 120283 ja 104283 - 5p | |||
== Praktikumid & tähtajad == | == Praktikumid & tähtajad == | ||
| 10. rida: | 124. rida: | ||
Tähtajad võivad muutuda! | Tähtajad võivad muutuda! | ||
* I kodutöö [[ITI0011-13-HW1-TicTacToe|Trips-Traps-Trull]], tähtaeg 23. - 26. september | * I kodutöö [[ITI0011-13-HW1-TicTacToe|Trips-Traps-Trull]], tähtaeg 23. - 26. september [http://dijkstra.cs.ttu.ee/~ago/ttt.jar Demo] | ||
* II kodutöö [[ITI0011-13-HW2-Panoramio|Panoramio]], tähtaeg 21. - 24. oktoober [http://dijkstra.cs.ttu.ee/~ago/Panoramio.jar Demo] | |||
* III kodutöö [[ITI0011-13-HW3-Kimp|Kimp]], tähtaeg 18. - 21. november [http://dijkstra.cs.ttu.ee/~ago/Kimp.jar Demo] | |||
** Valikuline Android rakenduse loomine Kimp ülesande asemel: [[ITI0011-13-HW3V2-Android-Gomoku|Gomoku Androidile]]. | |||
* IV kodutöö [[ITI0011-13-HW4-Gomoku|Gomoku]], tähtaeg 16. - 19. detsember | |||
== Eksam == | == Eksam == | ||
* Kõigil on võimalus valida omale päev, millal eksamit sooritada - 9.jaan või 16.jaan | |||
* '''Kellaaega''' valida ei saa - selle määrab õppejõud juhuslikkuse alusel. Ilmub siia: [https://docs.google.com/spreadsheet/pub?key=0AiSJPpWnMYPZdDBxWHpIRlg5UVRmeEhSRlFhYVVSNFE&single=true&gid=3&output=html kodutööd-punktid] | |||
* Eksamile '''peab registreerima ÕIS'''-is (hiljemalt eelmisel päeval kl. 12) | * Eksamile '''peab registreerima ÕIS'''-is (hiljemalt eelmisel päeval kl. 12) | ||
* Esimene eksam (9.jaan) on ka '''lisaeksam''' nö. "kehtivat deklaratsiooni" omavatele üliõpilastele. | |||
* NB! Kaasa vaja võtta '''pildiga dokument'''. | * NB! Kaasa vaja võtta '''pildiga dokument'''. | ||
'''Konsultatsioonid''': | |||
* '''8. jaanuar''' 2014 (kolmapäev), '''ICT-411''', kell '''13:00''' - 14:00 | |||
* '''15. jaanuar''' 2014 (kolmapäev), '''ICT-411''', kell '''12:00''' - 13:00 | |||
'''Eksamiajad''': | |||
* '''9. jaanuar''' 2014 (neljapäev), VIA-229, kell 10.00-12.00 & 12.15-14.15 (ka '''lisaeksam''') (registreerimise lõpp 8.jaan kl 12:00) | |||
* '''16. jaanuar''' 2014 (neljapäev), VIA-229, kell 10.00-12.00 & 12.15-14.15 (registreerimise lõpp 15.jaan kl 12:00) | |||
'''Lisaeksam''' kevadsemestri eelnädalal: | |||
* '''30.jaanuar''' 2014 (neljapäeval), VIA-229, kell 12.00 (registreerimise lõpp 29.jaan kl 12:00) | |||
* Konsultatsioon 23. jaanuar kell 10.00 ruumis ICT-411. (Aleksandr Lenin) | |||
* Konsultatsioon 29. jaanuar kell 12.00 ruumis ICT-411. | |||
Näite-eksamiülesanded 2004 aastast leiad siit: | Näite-eksamiülesanded 2004 aastast leiad siit: | ||
| 33. rida: | 160. rida: | ||
* Iga kodune ülesanne annab kuni 10 punkti. Kokku on 4 kodust ülesannet. | * Iga kodune ülesanne annab kuni 10 punkti. Kokku on 4 kodust ülesannet. | ||
* Koduse ülesande ettenäitamine vähemalt üks nädal enne tähtaega annab 1 lisapunkti. | |||
* Eksamile pääsemiseks peavad olema sooritatud '''vähemalt kolm''' neljast kodusest ülesandest. | * Eksamile pääsemiseks peavad olema sooritatud '''vähemalt kolm''' neljast kodusest ülesandest. | ||
* Juhul, kui üks neljast ülesandest jääb realiseerimata, siis selle eest punkte ei saa. Aine maksimumpunktid on siis 90. | * Juhul, kui üks neljast ülesandest jääb realiseerimata, siis selle eest punkte ei saa. Aine maksimumpunktid on siis 90. | ||
* Ülesannete esitamise '''tähtajad on rühmapõhised''' - vastavalt tunniplaanis märgitule. | * Ülesannete esitamise '''tähtajad on rühmapõhised''' - vastavalt tunniplaanis märgitule. | ||
* Iga hilinenud ülesande eest saab ''' | * Iga hilinenud ülesande eest saab '''kuni pooled punktid''' (kui muidu saab ülesande eest näiteks 5 punkti, siis hilinenult saab ülesande eest 2 punkti). | ||
* Hilinenud ülesannet saab | * Hilinenud ülesannet saab ette näidata '''kuni 3 nädalat''' pärast tähtaega (koduülsannete intervall on 4 nädalat, eesmärk on eraldada vana ülesande teine tähtaeg ja uue ülesande põhitähtaeg) | ||
* Pärast auditoorse õppetöö lõppu (viimane praktikum) ei aktsepteerita enam ühtegi ülesannet. | * Pärast auditoorse õppetöö lõppu (viimane praktikum) ei aktsepteerita enam ühtegi ülesannet. | ||
* Iga ülesanne tuleb programmeerida '''iseseisvalt''' ja näidata/kaitsta praktikumi juhendajale praktikumi ajal ette. E-postiga saadetud lahendusi ei aktsepteerita! | * Iga ülesanne tuleb programmeerida '''iseseisvalt''' ja näidata/kaitsta praktikumi juhendajale praktikumi ajal ette. E-postiga saadetud lahendusi ei aktsepteerita! | ||
| 47. rida: | 175. rida: | ||
Teiste sõnadega: vanad praktikumitulemused kehtivad <b>ainult</b> juba olemasoleva hinde parandamiseks, mitte aga olukorras, kus sa pole eksamil läbi saanud. Viimasel juhul pead lihtsalt tegema nullist selle aasta praktikumitööd. | Teiste sõnadega: vanad praktikumitulemused kehtivad <b>ainult</b> juba olemasoleva hinde parandamiseks, mitte aga olukorras, kus sa pole eksamil läbi saanud. Viimasel juhul pead lihtsalt tegema nullist selle aasta praktikumitööd. | ||
<b>Eksamil</b> osalemine eeldab vähemalt kolme sooritatud | <b>Eksamil</b> osalemine eeldab vähemalt kolme sooritatud praktikumitööd (kodutööd) neljast. Eksamil saab punkte 0-60. Eksami punktide arv alla 20 (60st) annab automaatselt tulemuseks 0. Muudel juhtudel liidetakse praktikumipunktid ja eksamipunktid ning hindevahemikud on '''51-60, 61-70, …, 91-100'''. Eksam on kirjalik, paberil, ja koosneb ainult väikestest programmeerimisülesannetest. | ||
== Loengu/praktikumi materjalid == | == Loengu/praktikumi materjalid == | ||
'''Loengute videod: [https://echo360.e-ope.ee/ess/portal/section/259bfb1a-2454-4039-8193-7b1190b1d154 echo360 Programmeerimise põhikursus Javas]''' | |||
# java, eclipse, checktyle, hello-world | # java, eclipse, checktyle, hello-world | ||
## [https://docs.google.com/presentation/d/1VC_HpsLVHH0evnWAeaQFYinu3LiNwoQOlw6oYc8WFOE/present#slide=id.p14 I loeng] | |||
## [https://docs.google.com/presentation/d/1O4sQqaxqxkxmTgy_Ld-4DoSRJy8ZFN8eISXa_244_Mc/present#slide=id.p13 I praktikum] | |||
# stdio, control-structures, arrays, String, IOException | |||
## [https://docs.google.com/presentation/d/1SaSDKwS3tR8N7KC2xNkojXl0MZtTTC5MJD9zyQU5Dp0/present#slide=id.p14 II loeng] | |||
## [https://docs.google.com/presentation/d/1vq5eTmUwj-NlkZC-HIXlcTPV663d3bIP9dpDm9-Qx0E/present#slide=id.p13 II praktikum] | |||
# mehtods & classes, no code duplication, method signature, classes as structures + methods ~= OOP, arrays | |||
## [https://docs.google.com/presentation/d/1qk2WQ9JG0RXlSw06bvz3H2XfR9MYVx5N2yvF-78qNVI/present#slide=id.p14 III loeng] | |||
## [https://docs.google.com/presentation/d/1FPOJTpO7Z4KLQa8so5Q7qLT8n2Kd0TdUs1LdMOhJWZ4/present#slide=id.p13 III praktikum] | |||
# exception, throw, try-catch-finally, i/o stream, wrapping, file, url | |||
## [https://docs.google.com/file/d/0BySJPpWnMYPZNkhZVUhvOEJxZ2M/edit?usp=sharing IV loeng] | |||
## (praktikumides toimus koduste tööde kaitsmine) | |||
# command-line arguments, date | |||
## [https://docs.google.com/file/d/0BySJPpWnMYPZdjdaYVk3S20yMWc/edit?usp=sharing V loeng] | |||
## [https://docs.google.com/file/d/0BySJPpWnMYPZc3ZCdDJLTUxJaVE/edit?usp=sharing V praktikum] | |||
# OOP | |||
## [https://docs.google.com/presentation/d/12apBQ05p4hinlCA6rctzvBjWmQuDpS4C1a0i464T3UA/pub#slide=id.i0 VI loeng (Aivo Anier)] | |||
# Android | |||
## [https://docs.google.com/file/d/0BySJPpWnMYPZMS1BMVF0UlpsalE/edit?usp=sharing VII loeng (Tanel Tammet)] | |||
# GUI | |||
## [https://drive.google.com/file/d/0BySJPpWnMYPZcXpUbzF3ZjVRMkU/edit?usp=sharing VIII loeng] | |||
## (praktikumides toimub kodustes tööde kaitsmine) | |||
# GUI jätk | |||
## [https://drive.google.com/file/d/0BySJPpWnMYPZcXpUbzF3ZjVRMkU/edit?usp=sharing IX loeng] | |||
## praktikumis JButton, ActionListener, [http://code.google.com/p/iti0011/source/browse/2013/src/praktikumid/w09/p4/ButtonPanel.java ButtonPanel.java], [http://code.google.com/p/iti0011/source/browse/2013/src/praktikumid/w09/p4/interface_example/ interface example] | |||
# III praktikum, binaarotsing, insert-sort, merge-sort, quick-sort | |||
## [https://drive.google.com/file/d/0BySJPpWnMYPZZFJDTUZzc3V5cUE/edit?usp=sharing X loeng] | |||
## praktikumis MouseListener, MouseMotionListener, [http://code.google.com/p/iti0011/source/browse/#git%2F2013%2Fsrc%2Fpraktikumid%2Fw10%2Fp5 drawing example] | |||
# III praktikum, threads | |||
## [https://drive.google.com/file/d/0BySJPpWnMYPZcjhmaGczMWlTejA/edit?usp=sharing XI loeng - threads] | |||
## praktikumis kimp kodutöö raames undo näiteid | |||
# III praktikumi kaitsmine, IV praktikumi tutvustus, Minimax, Alpha-Beta | |||
## [https://drive.google.com/file/d/0BySJPpWnMYPZX2JVYVQxMTgwYm8/edit?usp=sharing XII loeng - gomoku, minimax, alpha-beta] | |||
## (praktikumides III kodutöö kaitsmine) | |||
# Gomoku, breadth-first search, depth-first search, traveling salesman problem | |||
## [https://drive.google.com/file/d/0BySJPpWnMYPZc2k0dU5OYVVZRnc/edit?usp=sharing XIII loeng - tsp, dfs, bfs] | |||
## praktikumis Gomoku ülesande tutvustus | |||
# Data structures, linked list, stack, queue, binary tree, (hash table) | |||
## [https://drive.google.com/file/d/0BySJPpWnMYPZRUMyclVrb1pWSkk/edit?usp=sharing XIV loeng - data structures] | |||
## praktikumis TTT minimax jätk [http://code.google.com/p/iti0011/source/browse/2013/src/praktikumid/w14/p2/Ttt.java Ttt.java] | |||
# Kordamine eksamiks | |||
## http://codingbat.com/java - harjutamine eksamiks | |||
## [https://drive.google.com/file/d/0BySJPpWnMYPZTGx0SDNCemdXNmc/edit?usp=sharing XV loeng - variable scope] | |||
# Kordamine | |||
## [https://drive.google.com/file/d/0BySJPpWnMYPZNlhxUTZscEZuX2M/edit?usp=sharing XVI loeng - kordamine] | |||
## praktikumides viimase kodutöö kaitsmine | |||
'''Konsultatsioon (08.01.2014):''' | |||
* [http://code.google.com/p/iti0011/source/browse/2013/src/konsultatsioon/ExamExample.java ExamExample.java], [http://code.google.com/p/iti0011/source/browse/2013/src/konsultatsioon/SwingExample2.java Swing näide] | |||
== Tööriistad == | == Tööriistad == | ||
Täpsustub esimese nädala jooksul!<br /> | Täpsustub esimese nädala jooksul!<br /> | ||
Checkstyle: [http://iti0011.googlecode.com/git/2013/checkstyle/iti0011.xml] | * Eclipse (Kepler 4.3 + Checkstyle plugin): [http://dijkstra.cs.ttu.ee/~ago/eclipse-iti0011.zip eclipse-iti0011.zip] | ||
* Checkstyle: http://iti0011.googlecode.com/git/2013/checkstyle/iti0011.xml | |||
** Vaikeseadetes on veidi üleliigseid reegleid, mis ei ole (eriti käesoleva kursuse kontekstis) relevantsed | |||
** Selles konfiguratsioonis on need reeglid välja lülitatud | |||
* '''NB''' [http://lambda.ee/wiki/ITI0011-13-Checkstyle Checkstyle plugini seadistamine] | |||
* Git koodihaldushoidla: http://code.google.com/p/iti0011/ | |||
* Git-i sirvimiseks veebibrauseriga: http://code.google.com/p/iti0011/source/browse/#git/2013 | |||
* Kursuse teated: http://groups.google.com/group/iti0011 | |||
== Õpik == | == Õpik == | ||
Viimane redaktsioon: 4. september 2014, kell 19:15
|
Ainekood: ITI0011 Lektor: Ago Luberg
Kontakt: ago.luberg ätt ttu.ee, TTÜ ICT-423 |
Teated
- Tähelepanu, 5. juuni eksami aeg ja koht on muutunud: eksam hakkab 11.30 ja ruum on ICT-411 (IT-maja).
- Kevadine eksam 5. juunil (neljapäev) kell 11.30 ruumis ICT-411. Registreerimine ÕIS-is hiljemalt 4. juuni kell 12.00
- Eksamit saavad sooritada tudengid, kellel on eksamieeldus täidetud (kolm ülesannet kaitstud).
- konsultatsioonid 28. mai kell 12.00 ja 4. juuni kell 12.00 ruumis ICT-411. Registreerimine kohustuslik: http://doodle.com/tbx47ydfpgzpqqd5
- kodutööd-punktid
- Eksamiinfo on väljas
- Kursuse RSS teated siin: http://groups.google.com/group/iti0011
- ITI0011 eelmisel semestril (2012)
- GOMOKU võistlusele laekus kolm tööd. Võistluse raames mängivad kõik mängijad omavahel läbi. Iga kahe mängija vahelised mängud viiakse läbi selliselt: 10x10 laual ükskord alustab üks (= mängib mustade nuppudega), teinekord teine; 20x20 laual samamoodi. Mängitakse 10 mängu (üldjuhul randomit ükski mängija ei kasuta, mis tähendab, et esimese mängu tulemus jääbki lõppseisuks). Tulemused ilmuvad jaanuari alguseks.
GOMOKU Tulemused:
| 10x10 | 20x20 | 10x10 | 20x20 | 10x10 | 20x20 | Punktid | Koht | ||
|---|---|---|---|---|---|---|---|---|---|
| P1 | P2 | P3 | |||||||
| must | P1 | 5-5 | 10-0 | 5-5 | 10-0 | 50 | I | ||
| valge | 5-5 | 10-0 | 5-5 | 0-10 | |||||
| must | P2 | 5-5 | 0-10 | 10-0 | 0-10 | 30 | III | ||
| valge | 5-5 | 0-10 | 0-10 | 10-0 | |||||
| must | P3 | 5-5 | 10-0 | 10-0 | 0-10 | 40 | II | ||
| valge | 5-5 | 0-10 | 0-10 | 10-0 | |||||
5-5 tähendab, et kõik 10 mängu lõppesid viigiga. 10-0 tähendab, et mängija, kes on vastaval real, võitis mängijat, kes on vastavas veerus. 0-10 tähendab, et mängija, kes on vastaval real, kaotas mängijale, kes on vastavas veerus.
Lisapunktid järgmiselt:
- 120941 - 10p
- 120283 ja 104283 - 5p
Praktikumid & tähtajad
Tähtajad võivad muutuda!
- I kodutöö Trips-Traps-Trull, tähtaeg 23. - 26. september Demo
- II kodutöö Panoramio, tähtaeg 21. - 24. oktoober Demo
- III kodutöö Kimp, tähtaeg 18. - 21. november Demo
- Valikuline Android rakenduse loomine Kimp ülesande asemel: Gomoku Androidile.
- IV kodutöö Gomoku, tähtaeg 16. - 19. detsember
Eksam
- Kõigil on võimalus valida omale päev, millal eksamit sooritada - 9.jaan või 16.jaan
- Kellaaega valida ei saa - selle määrab õppejõud juhuslikkuse alusel. Ilmub siia: kodutööd-punktid
- Eksamile peab registreerima ÕIS-is (hiljemalt eelmisel päeval kl. 12)
- Esimene eksam (9.jaan) on ka lisaeksam nö. "kehtivat deklaratsiooni" omavatele üliõpilastele.
- NB! Kaasa vaja võtta pildiga dokument.
Konsultatsioonid:
- 8. jaanuar 2014 (kolmapäev), ICT-411, kell 13:00 - 14:00
- 15. jaanuar 2014 (kolmapäev), ICT-411, kell 12:00 - 13:00
Eksamiajad:
- 9. jaanuar 2014 (neljapäev), VIA-229, kell 10.00-12.00 & 12.15-14.15 (ka lisaeksam) (registreerimise lõpp 8.jaan kl 12:00)
- 16. jaanuar 2014 (neljapäev), VIA-229, kell 10.00-12.00 & 12.15-14.15 (registreerimise lõpp 15.jaan kl 12:00)
Lisaeksam kevadsemestri eelnädalal:
- 30.jaanuar 2014 (neljapäeval), VIA-229, kell 12.00 (registreerimise lõpp 29.jaan kl 12:00)
- Konsultatsioon 23. jaanuar kell 10.00 ruumis ICT-411. (Aleksandr Lenin)
- Konsultatsioon 29. jaanuar kell 12.00 ruumis ICT-411.
Näite-eksamiülesanded 2004 aastast leiad siit:
Hindamispõhimõtted
- Iga kodune ülesanne annab kuni 10 punkti. Kokku on 4 kodust ülesannet.
- Koduse ülesande ettenäitamine vähemalt üks nädal enne tähtaega annab 1 lisapunkti.
- Eksamile pääsemiseks peavad olema sooritatud vähemalt kolm neljast kodusest ülesandest.
- Juhul, kui üks neljast ülesandest jääb realiseerimata, siis selle eest punkte ei saa. Aine maksimumpunktid on siis 90.
- Ülesannete esitamise tähtajad on rühmapõhised - vastavalt tunniplaanis märgitule.
- Iga hilinenud ülesande eest saab kuni pooled punktid (kui muidu saab ülesande eest näiteks 5 punkti, siis hilinenult saab ülesande eest 2 punkti).
- Hilinenud ülesannet saab ette näidata kuni 3 nädalat pärast tähtaega (koduülsannete intervall on 4 nädalat, eesmärk on eraldada vana ülesande teine tähtaeg ja uue ülesande põhitähtaeg)
- Pärast auditoorse õppetöö lõppu (viimane praktikum) ei aktsepteerita enam ühtegi ülesannet.
- Iga ülesanne tuleb programmeerida iseseisvalt ja näidata/kaitsta praktikumi juhendajale praktikumi ajal ette. E-postiga saadetud lahendusi ei aktsepteerita!
- Töötav ülesanne, millest tudeng üldse aru ei saa (pole enda tehtud), saab 0 punkti.
- Ülesande arvestamiseks ütle juhendajale praktikumi ajal ise, kui soovid lahendatud ülesannet näidata: juhendaja ei hakka reeglina ise õigeagselt uurima, et kas on ülesanne ikka tehtud.
Täpsustav info eelmisel kursusel tehtud praktikumitööde kohta: kui oled eelmine kord saanud punkte, siis saad neid sel semstril kasutada ainult juhul, kui said eksami edukalt sooritatud (hinne vähemalt 1). Vastasel korral pead praktikumitööd uuesti tegema.
Teiste sõnadega: vanad praktikumitulemused kehtivad ainult juba olemasoleva hinde parandamiseks, mitte aga olukorras, kus sa pole eksamil läbi saanud. Viimasel juhul pead lihtsalt tegema nullist selle aasta praktikumitööd.
Eksamil osalemine eeldab vähemalt kolme sooritatud praktikumitööd (kodutööd) neljast. Eksamil saab punkte 0-60. Eksami punktide arv alla 20 (60st) annab automaatselt tulemuseks 0. Muudel juhtudel liidetakse praktikumipunktid ja eksamipunktid ning hindevahemikud on 51-60, 61-70, …, 91-100. Eksam on kirjalik, paberil, ja koosneb ainult väikestest programmeerimisülesannetest.
Loengu/praktikumi materjalid
Loengute videod: echo360 Programmeerimise põhikursus Javas
- java, eclipse, checktyle, hello-world
- stdio, control-structures, arrays, String, IOException
- mehtods & classes, no code duplication, method signature, classes as structures + methods ~= OOP, arrays
- exception, throw, try-catch-finally, i/o stream, wrapping, file, url
- IV loeng
- (praktikumides toimus koduste tööde kaitsmine)
- command-line arguments, date
- OOP
- Android
- GUI
- VIII loeng
- (praktikumides toimub kodustes tööde kaitsmine)
- GUI jätk
- IX loeng
- praktikumis JButton, ActionListener, ButtonPanel.java, interface example
- III praktikum, binaarotsing, insert-sort, merge-sort, quick-sort
- X loeng
- praktikumis MouseListener, MouseMotionListener, drawing example
- III praktikum, threads
- XI loeng - threads
- praktikumis kimp kodutöö raames undo näiteid
- III praktikumi kaitsmine, IV praktikumi tutvustus, Minimax, Alpha-Beta
- XII loeng - gomoku, minimax, alpha-beta
- (praktikumides III kodutöö kaitsmine)
- Gomoku, breadth-first search, depth-first search, traveling salesman problem
- XIII loeng - tsp, dfs, bfs
- praktikumis Gomoku ülesande tutvustus
- Data structures, linked list, stack, queue, binary tree, (hash table)
- XIV loeng - data structures
- praktikumis TTT minimax jätk Ttt.java
- Kordamine eksamiks
- http://codingbat.com/java - harjutamine eksamiks
- XV loeng - variable scope
- Kordamine
- XVI loeng - kordamine
- praktikumides viimase kodutöö kaitsmine
Konsultatsioon (08.01.2014):
Tööriistad
Täpsustub esimese nädala jooksul!
- Eclipse (Kepler 4.3 + Checkstyle plugin): eclipse-iti0011.zip
- Checkstyle: http://iti0011.googlecode.com/git/2013/checkstyle/iti0011.xml
- Vaikeseadetes on veidi üleliigseid reegleid, mis ei ole (eriti käesoleva kursuse kontekstis) relevantsed
- Selles konfiguratsioonis on need reeglid välja lülitatud
- NB Checkstyle plugini seadistamine
- Git koodihaldushoidla: http://code.google.com/p/iti0011/
- Git-i sirvimiseks veebibrauseriga: http://code.google.com/p/iti0011/source/browse/#git/2013
- Kursuse teated: http://groups.google.com/group/iti0011
Õpik
Tasuta e-book: David Eck, Introduction to Programming Using Java , version 5, 2006 .
(http://math.hws.edu/javanotes/ vt ka http://math.hws.edu/eck/cs124/downloads/javanotes5.pdf) .