Imperatív programozás

A tárgy a Programtervező informatikus alapszakos hallgatóknak van meghirdetve az őszi félévekben.

Sillabusz

A tárgy célja, hogy programozási nyelvekkel kapcsolatos fogalmakkal ismertesse meg a hallgatókat, melyek alapján a hallgatók a programozás során képesek lesznek tudatosan választani a nyelvi eszközök közül. A tárgyalt ismeretkör az imperatív, a procedurális és (kisebb részben) a moduláris programozási paradigmát fedi le, alapot teremtve későbbi, az objektum-orientált és konkurens programozási paradigmákat tárgyaló kurzusoknak. A tárgy utal a vele egy időben tartott Funkcionális programozás kurzusra is (és viszont). A tárgy szoros kapcsolatban áll a vele egy időben tartott Programozás, illetve (kisebb mértékben) a Számítógépes rendszerek kurzusokkal. Jelen tárgynak nem célja, hogy a hallgatókat programozni tanítsa -- ez a Programozás kurzus feladata --, de természetesen hozzájárul a hallgatók programozási készségeinek fejlődéséhez.

Az előadásokon kötelező részt venni. A géptermi gyakorlatok a gyakorlatvezetővel segített önálló munkát tűzik ki célul. A félév során sem a gyakorlatokon, sem a géptermi zárthelyiken nem használunk integrált fejlesztői környezetet, csak programozói szövegszerkesztőket (pl. geany, notepad++, gedit, (g)vim, emacs) és parancssoros fordítást/futtatást. Ennek az a célja, hogy így a hallgatók megértik az eszközök működési elvét, tudatos eszközhasználókká válnak, és a későbbiekben az IDE-eszközök konfigurálására is képesek lesznek. A gyakorlatokon ösztönözzük a hallgatókat, hogy többféle operációs rendszeren (Windows, Linux) elsajátítsák a programkód megírásának, lefordításának és futtatásának technikáját.

Tematika

Az alábbi témaköröket C nyelveken tekintjük át. (A 3 kiemelt csoport Python nyelvet is tanul.)

Követelmények

Mind a rendszerezett elméleti tudást, mind a gyakorlati készségeket mérjük a tárgyból. Az előbbi szokott több problémát okozni, ezért is kötelező az előadásokon részt venni.

Az átlagos hallgatótól 150 munkaórányi (azaz 150 x 45 perc) befektetést várunk el (ez felel meg az 5 ECTS kreditnek, ami a tárgy elvégzéséért jár). Ezt a 150 munkaórát a következő bontásban javasolt a tanulási folyamatra fordítani.

A tárgy teljesítésének előfeltételei

Számonkérés

A tárgy kombinált számonkérésű, azaz egyetlen (gyakorlati) jegy zárja a tárgyat. Ha valaki több, mint négyszer hiányzik akár az előadásról, akár a gyakorlatról, a jegyet megtagadjuk.

A kurzus során különböző formákban pontokat (összesen legfeljebb 60-at) kell gyűjteni. A pontok harmadát szorgalmi időszakban lehet megszerezni órai röpdolgozatokkal (10 röpdolgozat, darabja max. 2 pont). A fennmaradó 40 pontot a félév végén egy zárthelyi dolgozaton lehet megszerezni, melynek lesz elméleti (10 pontos) és gyakorlati (programozási - 30 pontos) része is. Mintazárthelyi a canvasben található.

A félév végi zárthelyit egy alkalommal meg lehet ismételni.

Az érdemjegy a következőképpen kerül meghatározásra. Az elégséges jegy eléréséhez 30 pontra van szükség, közepes 35 ponttól, jó 45 ponttól, jeles pedig 53 ponttól adható.

A zh írása során semmilyen (pl. hozott) segédanyag vagy szoftvereszköz nem használható azon kívül, amit az oktatók biztosítanak. Nevezetesen, a programozási feladat megírása során használható lesz egy C referencia: https://en.cppreference.com/w/c (valamint a kiemelt csoportoknak egy Python referencia: https://docs.python.org/3.5/library/index.html). Ezen kívül az elméleti kérdéssor megírása során üres papírt és tollat lehet használni. A kommunikáció minden formája tilos. A szabályok megszegése a jegy megtagadását vonja maga után.

A zárthelyi időpontjai

Minden zárthelyire legfeljebb 150 főt tudunk fogadni. Időpontra jelentkezni a Neptunban kell a szorgalmi időszak utolsó két hetében. (A Neptunban vizsgajelentkezésnek látszik majd, de ez csak egy technikai megoldás a zh-ra jelentkeztetéshez: valójában vizsgajegy nem kerül a vizsgákhoz rögzítésre, hiszen a kurzus gyakorlati jeggyel zárul.)

A zárthelyik a Lovardában, a Nyelvi laborban és az Adatbázis laborban lesznek. Gyülekező a Lovarda előtt.

Javítózh időpontjai

Irodalom