Deklaratív programozás
A tantárgyleírás hatályossága
| Tantárgy neve (magyarul, angolul) |
Deklaratív programozás
Declarative Programming
|
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Tantárgykód | BMEVISZAD00 | ||||||||||||
| Tantárgyjelleg | — | ||||||||||||
| Képzési szint | — | ||||||||||||
| Kurzustípusok és óraszámok (heti/féléves) |
|
||||||||||||
| Tanulmányi teljesítmény/értékelés típusa | félévközi érdemjegy | ||||||||||||
| Tantárgy kreditértéke | 3 | ||||||||||||
| Tantárgyfelelős |
Dr. Szeredi Péter
elérhetőség:
szeredi.peter@vik.bme.hu
|
||||||||||||
| Tantárgyat gondozó oktatási szervezeti egység |
Számítástudományi és Információelméleti Tanszék
|
||||||||||||
| Kar | Villamosmérnöki és Informatikai Kar | ||||||||||||
| Tantárgy weboldala | https://dp.iit.bme.hu | ||||||||||||
| Tantárgy elsődleges mintatantervi jellege | — | ||||||||||||
| Közvetlen előkövetelmények – Erős előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Gyenge előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Párhuzamos előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Mérföldkő előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Kizáró feltétel | nincs |
Célkitűzés
· 1.
hét:
(4 óra előadás – bevezetés és funkcionális
programozás): Követelmények, szakirodalom, honlap. Motivációs példa logikai és funkcionális
nyelven. A deklaratív programozás fő jellemzői: függvények, ill. eljárások, nem
frissíthető változók, akkumulátorok, rekurzív algoritmusok és adatstruktúrák, jobbrekurzió,
magasabb rendű függvények, ill. eljárások.
Funkcionális programozás: Programozási
környezetek. Típusok, műveletek, változók, kifejezések. Szintaxis. Kifejezések
mohó és lusta kiértékelése. Listák, listanézet. Iteráció és rekurzió, lineáris
és elágazó rekurzió, jobbrekurzió, akkumulátorok. Modulok.
· 2.
hét:
(2 óra gyakorlat): Programozás funkcionális
nyelven.
(2 óra előadás – funkcionális
programozás): Beépített függvények. Összetett
kifejezések. Listák és ennesek. Mintaillesztés. Típusspecifikáció. Modulokról
bővebben.
· 3.
hét:
(4 óra előadás – funkcionális
programozás): Magasabb rendű függvények, függvényértékek. Gyakori könyvtári
függvények. Kivételkezelés.
Összetett adatszerkezetek és
kezelésük: listák, halmazok, gráfok. Kulcs-érték párok, bináris fák. Lineáris
és elágazó rekurzió újra. Programhelyesség igazolása. Lusta kiértékelés, lusta
lista.
· 4.
hét:
(2 óra gyakorlat): Programozás funkcionális
nyelven, felkészítés a zárthelyire.
(2 óra előadás – logikai
programozás): Bevezetés példákon keresztül. A nyelv alapszintaxisa,
adatstruktúrák. Listakezelés.
· 5.
hét:
(2 óra gyakorlat): Programozás logikai nyelven.
(2 óra előadás – logikai programozás): A végrehajtási
algoritmus. Redukciós lépés, egyesítés, keresési tér. A nyomkövetés
dobozmodellje.
· 6.
hét:
(4 óra előadás – logikai programozás):
Operátorok. További vezérlési szerkezetek: diszjunkció, feltételes szerkezet,
negáció. Jobbrekurzió, akkumulátorok. A keresési tér szűkítése. Determinizmus
és indexelés. Vezérlési eljárások.
· 7.
hét:
(2 óra gyakorlat): Programozás logikai nyelven.
(2 óra előadás – logikai programozás):
Meta-logikai eljárások. Megoldásgyűjtő eljárások. Magasabb rendű eljárások.
· 8.
hét:
(4 óra előadás – deklaratív programozás):
Korlát-alapú programozási módszerek.
· 9.
hét:
(2 óra gyakorlat): Programozás funkcionális és logikai
nyelven.
(2 óra előadás – deklaratív programozás):
Szélességi és mélységi keresések.
· 10.
hét:
(2 óra gyakorlat): Programozás funkcionális és
logikai nyelven.
(2 óra előadás – deklaratív programozás): Összefoglalás
és kitekintés.
· 11.
hét:
(2 óra gyakorlat): Programozás funkcionális és logikai
nyelven, felkészítés a zárthelyire.
Tanulmányi eredmények
Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:
Tudás
Nincsenek rögzített tanulási eredmények.
Képességek
Nincsenek rögzített tanulási eredmények.
Attitűd
Nincsenek rögzített tanulási eredmények.
Autonómia és felelősség
Nincsenek rögzített tanulási eredmények.
Oktatási módszertan
Tanulástámogató anyagok
Online források
A tantárgy teljesítéséhez ajánlott előzetes ismeretek
Általános szabályok
Teljesítményértékelési módszerek
Szorgalmi időszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Szorgalmi időszakban végzett teljesítményértékelések részaránya
Nincs megadva részarány.
Vizsgaidőszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Vizsgarészek részaránya
Nincs megadva részarány.
Érdemjegy megállapítása
Nincs megadva érdemjegy határ.
Jelenléti és részvételi követelmények
Nincs megadva jelenléti követelmény.
Javítás, ismétlés és pótlás különös szabályai
Nincs megadva.
Rövid leírás
Nincs megadva.
Részletes leírás
Ajánlott tantárgyak
Nincs megadva.
A tantárgy elvégzéséhez szükséges tanulmányi munka
Nincs megadva munkaidő bontás.
Tantárgykövetelmények hatályossága
Tantervi elhelyezés
Nincsenek rögzített tantervi elhelyezések ehhez a tárgyverzióhoz.