Eksam
Eksam koosneb viiest ülesandest. Praktiline osa koosneb tegelikult ainult ühest suurest ülesandest "Kirjuta etteantud keele jaoks interpretaator ja kompilaator", aga me tükeldame seda ülesannet eraldi testitavateks juppideks. Natuke pikemalt selle kohta on meie eksamit tutvustavas videos.
- Alusosa: Avaldispuu väärtustamine (15p).
- Seotud loengud: avaldiste väärtustamine & visitor.
- Alusaosa eriloeng: alusosa harjutuste lahendamine.
- Põhiosa: Formaalse keele töötlemine ANTLRiga (15p).
- Seotud loengud: ANTLRi tutvustus & ASTi loomine.
- Põhiosa eriloeng: põhiosa harjutuste lahendamine.
- Lõviosa: Koodi genereerimine (10p).
- Seotud loengud: CMa ülevaade ja CMa praktikum.
- Lõviosa eriloeng: lõviosa harjutuste lahendamine.
Lisaks on seal võimalik punkte teenida oma teoreetiliste teadmistega:
- Quiz: Moodle'i teooriatest (20p).
- JFLAP: Automaatide joonistamine (10p).
- Lisaloeng: JFlapiga lahendamine.
Eksami jaoks oleme planeerinud 6 tundi. Kõik ülesanded lahendatakse arvuti peal ja esitatakse moodle'is. NB! kellel arvuti aku nii kaua vastu ei pea, võiks pikendusjuhtme igaks juhuks kaasa võtta. Kõik eksami osad (quiz kaasarvatud) saab lahendada suvalisel hetkel. Moodle'is esitamise kohad on lahti eksami algusest lõpuni.
Eksami praktilise osa näited
Eksami praktiline osa formaat on fikseeritud. Samu asju tuleb teha, aga implementeeritav näidiskeel muutub. Meie näidiskeelte kirjeldused on siin koos, aga me lahendame neid juppide kaupa. Kõigepealt nende alusosad, siis põhiosad ja lõpuks lõviosad.
- Imp, lihtne imperatiivne keel.
- Bolog, pisike loogilise programmeerimise keel.
- Parm, paralleelkomponeerimise mikrokeel.
- Hulk, uskumatu hulgatöötlusekeel.
- Dialoog, dialektiline tingimuskeel.
- Pullet, puhas let-sidumistega keel.
- Estolog, Eesti loogikute keel.
Mõnedel näidiskeeltel on olemas ka meistriosa. Need on suurepärased ülesanded tõelistele meistritele niisama harjutamiseks. Ma saan aru, kui olete kõik viimseni pettunud, et eksamil ühtegi sellist uut ja üllatavat ülesannet ei tule...
Formaalsed nõuded ja tingimused
- Eksamiks peab eelnevalt ÕIS-is registreerima.
Kaasa tuleb võtta isikut tõendav dokument.- Võib kasutada kõik oma kirjalikud materjale ja eelnevad koodilahendused. Esitatud koodis ei tohi esineda teistelt pärit koodijuppe.
- Interneti read-only kasutamine on lubatud. Iga tudeng vastutab ise selle eest, et tema kood interneti või muul viisil teistele ei leviks. Avalike allikate kasutamisel tuleb nendele viidata.
Eksam toimub sel aastal kodueksamina. Igaüks lahendab iseseisvalt kodus ja esitab moodle'is. Me usaldame teid selle protsessiga. Võtame ainult kaks asja ette, et kõik oleksid võrdsemas seisus:
- Suhtume väga tõsiselt koodi kopeerimisesse: kui kaks tudengit esitavad nii identsed lahendused, et isegi kõige heatahtlikum inimene ei suuda uskuda, et need ei ole kopeeritud, siis on karistus väga karm!
- Laseme teil abi küsida eksami ajal. Palun kasutage aktiivselt fleepi abikeskust ja me anname vihjeid ja selgitusi. Kui on eksamist pool aeg möödas, siis võime ka aidata konkreetsete probleemidega. Kui oled ise piisavalt proovinud, aga oled kinni jäänud või millegi pärast miski ei tööta, siis võib lahendus üles laadida moodle'isse ja fleepis paluda, et me vaataks seda üle.
Eksami hindamine on automaatne. Eksami ajal saate kohe punktisumma teada, mis on juba saavutatud. Kui moodle'i quiz välja arvata, siis ülejäänud ülesandeid saab esitada nii palju kordi, kuni olete tulemusega rahul. Iga programmeerimisülesanne juures on 75% testidest avalikud, aga ülejäänud 25% lisame peale eksamit. Avalike teste me enam ei muuda, seega olemasolevaid punkte võtame ainult siis maha, kui esitus väga ilmselt töötab ainult konkreetsetel testsisenditel.
Kuidas eksamiks õppida?
Eksamiks tuleb harjutada, sest see moodustab väga suure osa hindest. Me üritame muidugi semestri jooksul teid just eksamiks ette valmistada!
- Me teeme loengus kolm sellist proovieksamit, kus harjutame esimest, teist ja kolmandat ülesannet eraldi.
- Me lisame siia lehele palju eksami näidisharjutusi. Ma redigeerin neid, et nad vastaks selle aasta eksamile. Nende näidislahendusi paneme välja ja viimastel nädalatel võiksime just nendele keskenduda.
- Me paneme iga kodutöö juurde ka kirja, kas see on eksami harjutamiseks oluline või mitte.
- Teooria osa kohta harjutame iga nädal, aga lisaks on viimane kordamistest selline, kus on kõik küsimused uuesti sees. See jääb siis lahti semestri lõpuni.