Programmeerimise algkursus 1 Java kasutusvõimalused, joonistusvahendid 2 Joonise esitamine kodutööna. Animatsiooni koostamine. 3 Hiire ja klaviatuuri sündmustele reageerimine. 4 Liikumise modelleerimine vastavalt füüsikaseadustele. 5 Animatsiooni esitamine kodutööna. Tekstiliste andmete töötlemine. 6 Veebist andmete lugemine, veebilinkide eraldamine. Veebilehestikus automaatne liikumine. 7 Veebikliendi esitamine kodutööna. I kordamisküsimuste vastamine. 8 Serverprogrammi loomine, ühendusvõtjate ootamine, andmevahetus. 9 Mitmelõimelise serveri koostamine, sünkroniseerimine. 10 Võrguprogrammile graafilise kasutajaliidese loomine. 11 Andmebaasiühenduse loomine, andmevahetus Java ja MySQLi vahel. 12 Grupitööde teemade valik, gruppide moodustamine. 13 Andmebaasi ning serverirakenduse kodutööde esitamine, grupiprogrammide koostamine. 14 II kordamisküsimuste vastamine, kodutööde esitamine Eksam C++ 1 01.02 Keele roll, kasutuskohad, arenduskeskkonnad, lihtsamate programmide käivitamine 2 08.02 Klasside, väljade ja meetodite kirjeldamine. Eksemplaride loomine ja kasutamine. Reaalse objekti või nähtuse kirjeldamine klassina. 3 15.02 QT raamistiku üldtutvustus 4 22.02 QT raamistiku kasutamine lahenduste loomisel 5 29.02 Objektorienteeritud programmeerimise põhimõisted, QT raamistiku kodutööde esitamine. 6 Rakenduse klassiskeemi kavandamine. Alamklassid. Virtuaalmeetodid. 7 Mitut tüüpi objektid ühises kogumis. Rakenduse objektiskeemi kavandamine. 8 Ühe temaatilise klassi esitamine kodutööna. Teadete liikumine objektide vahel. Teadetele reageerimine, paljundamine, edasi saatmine. Keerukama nähtuse kirjeldamine objektide ja nende suhete kogumina. 9 Objektistruktuuri abil loodud mudeli esitamine kodutööna. Rakenduse modulaarsuse saavutamine abstraktsete klasside abil. 10 Staatilised meetodid ja isendimeetodid, singleton. 11 C++ teegid andmehalduse tarbeks. Jadad, puud, graafid. 12 Disainimustrite kasutamine objektorienteeritud programmeerimise juures. Vabrik/facory. Andmestruktuuride kodutöö esitamine. // 13 Mitmesugused disainimustrid. 14 Kordamisküsimuste seminar, objektorienteeritud disainimustrite kodutöö esitamine. 22. 05 Eksam Pythoni ja Zope veebirakendused 1 Pythoni kasutusvaldkonnad, mitmesugused veebilahendused. 2 Miniraamistik Flask, selle abil veebilahenduse koostamine 3 Flaski lehestiku kujundamine mallide abil 4 Suhtlus andmebaasiga Pythoni abil. 5 Zope ülesehitus. Objektorienteeritud andmesalvestus ning andmete poole pöördumine. 6 Zope veebilehestiku kujundus TAL-lehemallide abil. Flaski kodutöö esitamine. 7 Zope moodulite loomine ning install. Kasutajaõiguste seadistamine ning arvestamine rakenduse juures. 8 TLÜs kasutusel olevad keeletehnoloogialahendused, nendes kasutatavad klassid, vahendid ja algoritmid. Zope lehestiku esitamine kodutööna. 9 Zope keelekorpuse moodul. Selle ülesehitus, andmete poole pöördumine ning täienduste tegemine. 10 Google App Engine. Pilvelahenduste koostamine. Nendega seotud võimalused ja piirangud. 11 Mitmesuguste andmete talletamine GAE ühetabelilisse andmebaasi. Keeletehnoloogia kodutöö esitamine. // 12 Veebilehestiku kujundamine GAE lehemallide abil. AJAX asünkroonseks andmevahetuseks serveri ja veebilehe vahel. 13 Arvestusülesande lahendamine. 14 Kordamisküsimuste seminar, Google App Engine kodutöö esitamine. XML rakendused 1 XMLi keel, kasutusvaldkonnad, töötlemisvahendid. Keele süntaks ja reeglid, dokumentide koostamine. 2 XMList andmete eraldamine XSLi abil. XSLi käivitamine mitme programmeerimiskeele juures. 3 XPATHi võimalused andmete poole pöördumiseks. Mallide kasutamine XSLi lehtede juures. 4 XSLi kodutöö esitamine. XMLi andmete struktuuri kavandamine, võimaluste ja piirangute arvestamine. Struktuuri kirjapanek skeemina (Schema). 5 Mitmesuguste olemasolevate skeemidega tutvumine. Nendele vastavate andmete koostamine ja erijuhtumite analüüs. Skeemile vastavuse kontrollimine tarkvara abil. 6 Omaloodud skeemi esitamine kodutööna. Veebilehe kujundamine vastavalt andmetele, skeemile ning etteantud parameetritele. 7 XML-andmete eraldamine SAX abil. Andmebaasipõhisele veebilehestikule XML-sisendi ja väljundi loomine vastavalt etteantud skeemidele. Väliste veebilehtedega suhtlemine XMLi abil. 8 XML-andmevahetusega veebilehe esitamine kodutööna. Veebiteenused ning nende kasutamine rakenduste sidumisel. 9 Asünkroonne andmevahetus veebilehe ja serveri vahel. Andmete edastus XMLi ja JSONi abil. 10 DOMi rakendusvõimalused andmepuu töötlemisel. XMLi põhine andmesalvestus ja -vahetus veebipluginate ning töölauarakenduste puhul. 11 Veebiteenuste kasutamine andmete salvestamise ja lugemise juures. 12 Arvestusülesande lahendamine //13 14 Kordamisküsimuste seminar, XML-salvestuse ja lugemisega rakenduse kodutöö esitamine.