ITI0102 - Programmeerimise algkursus

Loeng 1 - Korraldus

Ago Luberg

Kokkuvõte

  • 8 loengut (paaritu nädal T12)
  • 16 praktikumi: E14, N10, R12
  • 8 süvendatud praktikumi: paaris T12
  • Kursuse jooksul lahendate ülesandeid iseseisvalt
  • Ülesande lahendamine annab punkte
  • Punktid liidetakse
  • Semestri jooksul ~ 600 punkti
  • Eksam 400 punkti
  • Kokku 501p - 600p => "1", ... 901p - .. => "5"

Konsultatsioon

  • Kasutage täiendusõppe tunde (E16, T17:15, R8, R10)

Ainele registreerimine

Ainele registreerimine

  • Kasutage võtit:
  • IAAB
  • IADB
  • IAIB
  • KAUG - IADB sessioonõpe
  • MIKRO - mikrokraadi kavad
  • MUU (muu õppekava)
  • VABA (ilma deklaratsioonita)

Ülesanded

  • Iga nädal üks ülesanne
  • Automaattestimine
  • Kokku 15 nädalat

Ülesannete tähtajad

  • Ülesande tähtaeg järgmise nädala teisipäev kell 23:59

  • Iga hilinenud 24h-ga -10%

  • Näiteks EX01 tähtaeg on 7. september 23:59 (saab kuni 100%)

  • 8. septembri 23:59-ni saab kuni 90% jne

Ülesande esitamine

  • Ülesande lahendus laetakse Giti
  • Tudeng saab esitatud ülesande kohta TTÜ emailile tagasisidet (näiteks 80% punktidest)
  • Lahendust võib üles laadida (esitada) lõpmatu arv kordi (kui pole öeldud teisiti)
  • Arvesse läheb parim (kui pole öeldud teisiti)
  • Üldiselt saab punktid kätte peale lahenduse esitamist
    • Osad ülesanded tuleb õppejõule ette näidata

Tagasiside

  • Mõne ülesande puhul anname kirjaliku tagasiside
  • Sõltuvalt tagasisidest tuleb mõnikord koodi parandada
  • Mõne ülesande puhul rakendame suulist tagasisidet
  • Tudeng näitab ja seletab oma koodi õppejõule
    • Praktikumis
    • Või vastavalt võimalusele online
  • Tavaliselt antakse tudengile võimalus koodi parandada

Ülesande punktid

  • Lõpptulemus sõltub erinevatest komponentidest:
  • automaattestid (100% =>15p; 80% => 13p)
  • stiilikontroll (korras => 1p, üks viga => 0)
  • tagasiside kuni 1p
  • Saadud komponendid korrutatakse
  • näiteks: 13 x 1 x 1 => 13p.
  • Kui stiil on korrast ära, siis on kokku 0p
  • Kui tagasiside on sobiv, saab selle eest 1p
    • Muul juhul anname võimaluse koodi parandada

Ülesande punktid

  • Iganädalane ülesanne annab kuni 32 punkti
    • 32 kahendsüsteemis: 10 0000 (252^5)
  • Tavaliselt jagatud 2-4 osaks
  • Esimene osa on kohustuslik
  • Tavaliselt esimene osa on natuke lihtsam kui teised
  • Iga ülesande juures on info, kuidas punkte antakse

Automaatne stiilikontroll

  • Kõik lahendused peavad vastama stiilinõuetele
  • Kasutame aines kahte kontrolli:
    • PEP 8 - Üldine koodistiil
    • PEP 257 - Dokumenteerimise stiil
  • Funktsioonid, klassid, meetodid jms peavad olema kommenteeritud
    • Sisu kontrollime ka ("asd" võib automaattesterile sobida, aga õppejõule mitte!)
  • Automaattester annab stiilivigadest teada

Süvapython

  • Mõne jaoks on tavaülesanded igavad
  • Pakume võimalust lahendada keerukamaid ülesandeid
  • Kokku semestri jooksul umbes 8 ülesannet
  • Nende eest saab kokku 100p
  • "5" saamiseks tuleb neid lahendada
  • Teemadest räägime paaris teisipäeval kell 12.00

Punktid kokku

  • Ülesanded 600p
    • ülesanded 15 x 32p = 480p
    • kontrolltöö 20p
    • süvaülesanded 100p
    • lisapunktid
  • Eksam 400p
  • Kokku: 1024p (100 0000 0000 ehk 2102^{10})
  • Kui süva ülesandeid ei tee, siis kokku ~900p
  • 901p -> "5", 801p -> "4", ... 501p -> "1", <501p -> "0"

Tunnikontroll, Kontrolltöö

  • 5. nädalal tunnikontroll (TK)
    • antakse 5 ülesannet
    • vähemalt pooled punktid tuleb saada (50%)
    • annab 5p
  • 10. nädalal kontrolltöö (KT)
    • vähemalt pool tuleb ära teha (50%)
    • annab 20p

Eksam

  • Eksamieeldus:
    • igast ülesandest esimene osa lahendatud
    • vähemalt 300p
    • TK 50%, KT 50%
  • Eksam toimub arvutiga
  • Lahendatakse ülesandeid + quiz
  • Interneti kasutamine pole lubatud
  • Aega 4h

Nädalate teemad

  • 1n Sissejuhatus, muutuja, sisendi lugemine
  • 2n funktsioon, matemaatilised avaldised, tingimuslause
  • 3n sõne, tsükkel
  • 4n järjend, ennik, tsükkel
  • 5n Tunnikontroll, sõnastik, hulk
  • 6n regulaaravaldised
  • 7n failid (lugemine, kirjutamine), järjestamine
  • 8n testimine

Teemad (jätkub)

  • 9n Rekursioon
  • 10n Objekti mõiste
  • 11n Objektid, klassid
  • 12n Objektid, klassid, pärimine
  • 13n Veebist lugemine, API
  • 14n moodul
  • 15n Vaba struktuuriga OOP
  • 16n Kordamine

Täiendusõpe

  • Esimesed 5 nädalat toimub abistav kursus ITI0002 - Programmeerimise täiendusõpe
  • Iga nädal 2 praktikumi (kokku 5 x 2 = 10 praktikumi)
  • Aine on arvestuslik (2 EAP)
  • Arvestuse saamiseks tuleb lahendada ära kõik ülesanded ja küsimustikud
  • Aine on tasuta
  • See ei ole kohustuslik aine

Täiendusõpe - arvestus

  • Arvestuse saamiseks:
    • tuleb lahendada ära antud ülesanded 7. nädalaks
    • tuleb sooritada kõik küsimustikud

Täiendusõpe - korraldus

  • Anname hulk ülesandeid, mida saate lahendada
  • Abiõppejõud aitavad küsimuste korral
  • Lahendame mõned ülesanded ka ekraanil/videos läbi
  • Üldiselt on ülesanded teemade kaupa (1. tund näiteks muutuja, printimine, sisendi lugemine)
  • Ülesannetel pole konkreetseid tähtaegu
  • Soovitatav oleks ülesanded lahendada järjest

Täiendusõpe

  • Kui sa oskad hästi programmeerida, siis seda ainet pole sulle vaja.
  • See on justkui konsultatsioon, mis on tunniplaanis kirjas
  • Peale 6. nädalat jätame arvatavasti ühe aja konsultatsiooniks
  • Kasutame neid tunde, et teemadest rääkida

Küsimused?

Materjalid

Onboarding

Küsimused?