Programmeerimise põhikursus Javas (2014)

Allikas: Kursused
Redaktsioon seisuga 4. september 2014, kell 12:35 kasutajalt Ago (arutelu | kaastöö) (→‎Tööriistad)
Mine navigeerimisribale Mine otsikasti

Java logo and wordmark.svg.png

Ainekood: ITI0011
Link: http://courses.cs.ttu.ee/pages/ITI0011

Lektor: Ago Luberg
Kontakt: ago.luberg ätt ttu.ee, TTÜ ICT-423
Loengu aeg: teisipäeviti 14:00 ruumis KYB-VEENUS

Praktikumide ajad: T8 (ICT-501), N8 (ICT-501), N8 (ICT-637, venekeelne), N14 (ICT-401)
Praktikumide õppejõud: Gert Kanter, Aleksandr Lenin (venekeelne praktikum)

Konsultatsiooniajad:
Ago Luberg: N10.00 (peale hommikust praktikumi), tuleb eelnevalt emaili teel kokku leppida (ago.luberg ätt ttu.ee)
Aleksandr Lenin: aeg tuleb eelnevalt emaili teel kokku leppida (aleksandr.lenin ätt ttu.ee)
Gert Kanter: aeg tuleb eelnevalt emaili teel kokku leppida (gert ätt cs.ttu.ee)

Kursus varasematel aastatel: 2013, 2012

Aine info ÕIS-is

Kodused ülesanded ja tähtajad

  • I kodutöö - ITI0011:Trips_Traps_Trull, tähtaeg 22. - 26. september 2014, täiendatud 4. sept
  • II kodutöö, tähtaeg 20. - 24. oktoober 2014
  • III kodutöö, tähtaeg 17. - 21. november 2014
  • IV kodutöö, tähtaeg 15. - 19. detsember 2014

Eksam

  • Eksamile peab registreerima ÕIS-is (hiljemalt eelmisel päeval kl. 12)
  • NB! Kaasa vaja võtta pildiga dokument.

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.
  • Tunnis tehtavad ülesanded annavad semestri peale kokku kuni 5 lisapunkti.
  • Eksamile pääsemiseks peavad olema sooritatud vähemalt kolm neljast kodusest ülesandest.
  • Eksamil saab 0 - 60 punkti.
  • Eksami punktide arv alla 20 (60st) annab automaatselt lõpptulemuseks hinde "0".
  • Eksamitulemusega vähemalt 20p liidetakse koduste ülesannete punktid, tunniülesannete punktid ja eksamipunktid kokku, hindevahemikud on 51-60 -> "1", 61-70 -> "2", …, 91 ja üle -> "5".
  • Eksam on kirjalik, paberil, ja koosneb ainult väikestest programmeerimisülesannetest.
  • Juhul, kui üks neljast ülesandest jääb realiseerimata, siis selle eest punkte ei saa. Aine maksimumpunktid on siis 93 (91p ja rohkem annab hindeks "5").
  • Ü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 (4. nädalal ja edasi saab 0 punkti).
  • Pärast auditoorse õppetöö lõppu (viimane praktikum) ei aktsepteerita enam ühtegi ülesannet.
  • Iga ülesanne tuleb programmeerida iseseisvalt ja 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.
  • Plagiaadi esitamise eest on tulemus automaatselt 0 punkti.
  • Ülesande arvestamiseks ütle juhendajale praktikumi ajal ise, kui soovid lahendatud ülesannet näidata.

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.

Loengu/praktikumi materjalid

  1. java, eclipse, checktyle, hello-world
  2. variables, memory, control-structures
  3. classes and methods, no code cuplication, method signature, String, array
  4. input-output, stdio, stream, wrpper, file, url, Exception intro, Unit testing
    • praktikumis I kodutöö kaitsmine
  5. OOP, Karel the Robot
  6. command-line arguments, exceptions
  7. OOP, II kodutöö
  8. GUI, JavaFX, III kodutöö tutvustus
    • praktikumis II kodutöö kaitsmine
  9. GUI jätk
  10. Androidile arendamine
  11. III kodutöö näpunäiteid
  12. IV praktikumi tutvustus, Gomoku sissejuhatus
    • praktikumis III kodutöö kaitsmine
  13. Rekursioon, puu, otsing, minimax algoritm
  14. IV kodutöö näpunäited, alpha-beta algoritm
  15. Data structures, linked list, stack, queue, binary tree, (hash table)
  16. Kordamine eksamiks
    • praktikumis IV kodutöö kaitsmine

Tööriistad

Täpsustub esimese nädala jooksul!

Õpik

Tasuta e-book: David Eck, Introduction to Programming Using Java , version 7.0, 2014

(http://math.hws.edu/javanotes/ vt ka http://math.hws.edu/eck/cs124/downloads/javanotes7.pdf)