Arvutiteaduse instituut
  1. Kursused
  2. 2017/18 kevad
  3. Automaadid, keeled ja translaatorid (LTAT.03.006)
EN
Logi sisse

Automaadid, keeled ja translaatorid 2017/18 kevad

  • Üldinfo
  1. Õppekorraldus
  2. Eksam
  3. Reeglid
  4. Töövahendid
  5. Projekt
  • Kava
  1. Soojendus
  2. Regulaaravaldised
    1. Regex
    2. Java API
    3. Kodutöö
  3. Olekumasinad
  4. Lõplikud automaadid
  5. Avaldise struktuur
  6. Grammatikad ja lekser
  7. Käsitsi parsimine
  8. ANTLR intro
  9. AST loomine
  10. Interpretaator
  11. Semantiline analüüs
  12. Kompilaator
  • Moodle
  • Bitbucket
  • Fleep!

2. Regulaaravaldised

Sellel nädalal alustasime tööd regulaaravaldistega. Nendega saab siis spetsifitseerida, millised tähekombinatsioonid moodustavad keele sõnu. Neid kasutatakse ka väga palju praktikas teksti otsimisel.

Koduülesanne püstitus on siin lehel. Selle lahendamiseks võib olla kasuks järgmised materjalid. Praktikumis võite küsida abi nende ülesannete kohta ja muidugi ka otseselt enda lahenduskatse kohta. (Spoiler alert: Teise ülesanne lahendused on kättesaadavad avalaikus repos, aga esimese puhul eeldame, et igaüks saab ise hakkama.)

  1. Regulaaravalduste kordamine ja kasutamine. Selleks on kindlasti abiks regex101.com ja kui hakkab igav, siis proovige ka mängida Regex Golfi.
  2. Java regulaaravaldiste API harjutused. Siin on eelkõige mõned näited, kuidas kodutöö esimese ülesanne saaks lahendada.

Selle nädala eesmärk on õppida regulaaravaldistega programmeerida, aga seda ainult sellel eesmärgil, et saame seeläbi kirjutada loetavamat koodi! Koodi selgus on oluline! Teised inimesed peaksid saama teie koodist aru. Palun seega eriti tähele panna praktikumides, kuidas näidetes on rühmad kasutatud (eriti ilus on rühmadele nimed anda), et puhtamalt vajalikud osad kätte saada.

Te olete ilmselt kuulnud, et koodi peab dokumenteerima, aga see on eelkõige väline liides, kuhu tuleb suunata oma selgitamistöö. Kui on hästi organiseeritud kood ja õigete nimedega meetodid, siis ei ole sisemist loogikat vaja kommenteerida. Sisemised kommentaarid nagu "siin otsin numbrid sõnes üles", mille asemel peaks olema selge regulaaravaldis, peetakse koodihaisuks, sest koodi struktuuriga on midagi väga mäda, kui peab lisama selliseid kommentaare.

  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Courses’i keskkonna kasutustingimused