Programozási paradigmák és technikák (GUZEBAL-PROPARTE-1)
Alapadatok
Oktatók
Tantárgy célja
A tárgy célja kettős: egyrészt az objektum-orientált programozás alapjainak megismertetése a C#-nyelven keresztül, másrészt felkészíti a hallgatókat a vizuális programozás tantárgyra.
Elsajátítandó ismeretanyag
Elsajátítandó ismeretanyag előadás: 1. A C# project alap-elemei, konzol input-output, string-numerikus konverziók. 2. Az OOP alapelemei: osztály, tagok és metódusok, osztály-példány, példányosítás, a konstruktor. 3. Elérési szintek, statikus tagok és metódusok, névterek és kész osztályok használata. 4. Tömb típusok használata, kétdimenziós tömbök. A foreach ciklus. 5. Kivétel-kezelés, fontosabb kivétel-típusok. 6. Szöveg-kezelő metódusok. Az enum típusok. 7. Szöveges és általános fájl input-output eszközök. 8. Osztály-öröklődés, metódus felülírás, absztrakt és virtuális metódusok. 9. Érték- és referencia-típusú változók, a ref, out módisító. A Copy-konstruktor alkalmazása. 10. List és Dictionary osztályok. Getter és setter tulajdonságok. Osztály-indexelő. 11. Interfészek. Az IComparable interfész. 12. Lambda kifejezés, alkalmazás listáknál. 13. A delegate típus, delegate változó. Elsajátítandó ismeretanyag laboratórium: 1. A C# project alap-elemei, konzol input-output, string-numerikus konverziók. 2. Az OOP alapelemei: osztály, tagok és metódusok, osztály-példány, példányosítás, a konstruktor. 3. Elérési szintek, statikus tagok és metódusok, névterek és kész osztályok használata. 4. Tömb típusok használata, kétdimenziós tömbök. A foreach ciklus. 5. Kivétel-kezelés, fontosabb kivétel-típusok. 6. Szöveg-kezelő metódusok. Az enum típusok. 7. Szöveges és általános fájl input-output eszközök. 8. Osztály-öröklődés, metódus felülírás, absztrakt és virtuális metódusok. 9. Érték- és referencia-típusú változók, a ref, out módisító. A Copy-konstruktor alkalmazása. 10. List és Dictionary osztályok. Getter és setter tulajdonságok. Osztály-indexelő. 11. Interfészek. Az IComparable interfész.
Szakmai kompetenciák
Tudás
– Képes programozásra objektumorientált, vizuális és egyéb programozási környezetben.– Képes csoportmunkában együttműködni saját és más szakterületek képviselőivel egy adott probléma megoldásának kidolgozásában.– Képes folyamatos önképzésre, lépést tartva ezáltal az informatikai szakma fejlődésével.
Képesség
– Ismeri a főbb programozási paradigmákat, programnyelveket, fejlesztési eszközöket.– Ismeri a fontos szoftverfejlesztési módszertanokat, informatikai tervek és dokumentációk jelölésrendszerét.
Attitűd
– Nyitott az új módszerek, programozási nyelvek, eljárások megismerésére és azok készségszintű elsajátítására, valamint lépést tud tartani ezek fejlődésével.– Törekszik a hatékony és minőségi munkavégzésre.
Autonómia és felelősség
Számonkérés és értékelés
Félévközi követelmények
Programozási és elméleti zárthelyi dolgozat(ok) írása számítógépen.
Vizsgakövetelmények
Generatív MI használata
1. álláspont: A GMI eszközök használata nem engedélyezett a feladatok megoldása során. Ez azt jelenti, hogy a GMI eszközök nem használhatók a formatív vagy szummatív értékelési elemek elkészítése, megoldása során és a generatív MI használata tanulmányi kötelességszegésnek minősül. Az MI eszközök nyelvi és helyesírás-ellenőrzésre történő használata nem tartozik az 1. álláspont szerinti teljes tilalom alá.
Irodalom
Kötelező irodalom
[1] István, Reiter. C# programozás lépésről lépésre. Jedlik Oktatási Stúdió, 2018. ISBN 9786155012174
Ajánlott irodalom
[1] Troelsen, Andrew W., and Philip Japikse. Pro C# 10 with. NET 6: Foundational principles and practices in programming. Apress, 2022. ISBN 1484278682