Programozási paradigmák és technikák (GINFBAN-PROPARTE-1)

Alapadatok
Szak és képzési szint
Mérnökinformatikus, alapképzés
Tanterv
2021
Óraszám
2 + 0 + 2 (E+Gy+L)
Kreditérték
5 kredit
Elmélet–Gyakorlat arány
Elmélet: 50%, Gyakorlat: 50%
Tantervi félév
3. félév
Munkarend
Nappali
Előfeltételek
Algoritmusok és adatstruktúrák + Programozás I.
Értékelés típusa
Gyakorlati jegy
Tárgy kategória
Kötelező
Nyelv
magyar
Oktatók
Tantárgyfelelős
Prof. Dr. Johanyák Zsolt Csaba
Felelős tanszék
Informatika Tanszék
Oktatók
Gurka Dezsőné Csizmás Edit, Dr. Kovács Tamás, Kovács Márk, Szekeres György, Prof. Dr. Johanyák Zsolt Csaba
Ellenőrzésért felel
Prof. Dr. Johanyák Zsolt Csaba
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
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ó.

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. Első zárthelyi dolgozat 6. Kivétel-kezelés, fontosabb kivétel-típusok. 7. Szöveg-kezelő metódusok. Az enum típusok. 8. Szöveges és általános fájl input-output eszközök. 9. Osztály-öröklődés, metódus felülírás, absztrakt és virtuális metódusok. 10. Érték- és referencia-típusú változók, a ref, out módisító. A Copy-konstruktor alkalmazása. 11. Második zárthelyi dolgozat 12. List és Dictionary osztályok. Getter és setter tulajdonságok. Osztály-indexelő. 13. Interfészek. Az IComparable interfész.

Szakmai kompetenciák
Tudás

képességei - Képes a megszerzett alapismeretekre építve egy-egy műszaki informatikai területen mélyebb ismeretek önálló megszerzésére, a szakirodalom feldolgozására, majd a területhez kapcsolódó informatikai problémák megoldására. - Folyamatosan képezi magát és lépést tart az informatikai szakma fejlődésével.

Képesség

tudása - Ismeri a főbb programozási paradigmákat, programnyelveket, fejlesztési eszközöket. Tudása kiterjed az információs rendszerek modellezésére, adatbázis alapú rendszerek kialakítására, számítógépes hálózatok felépítésére, működésére és implementációjára, intelligens rendszerek jellemzőire, a mobil alkalmazásfejlesztés sajátosságaira, a korszerű, általános célú operációs rendszerek menedzselésére, és az IT biztonság szempontjaira - Ismeri a fontos szoftverfejlesztési módszertanokat, informatikai tervek és dokumentációk jelölésrendszerét. - Ismeri az informatika és a mérnöki szakma szókincsét és kifejezési sajátosságait magyar és angol nyelven, legalább alapszinten.

Attitűd

- Hitelesen képviseli a mérnöki és informatikai szakterületek szakmai alapelveit. -Nyitott az új módszerek programozási nyelvek, eljárások megismerésére és azok készség szintű elsajátítására - Törekszik a hatékony és minőségi munkavégzésre.

Autonómia és felelősség

- Felelősséget érez az önálló és csoportban végzett informatikai rendszerelemzői, -fejlesztői és -üzemeltetési tevékenységéért.

Számonkérés és értékelés
Félévközi követelmények

Programozási dolgozat írása számítógépen. Elméleti tesztek írása. Házi feladatok elkészítése.

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á.

Segédanyagok, laborháttér

A kötelező irodalom, előadásvázlat, a gyakorlatokon megírt programok, a fejlesztési környezet súgója. A gyakorlatokon, minden hallgatónak külön, korszerű számítógépes hozzáférés biztosított.

Irodalom
Kötelező irodalom

"[1]  Reiter István: C# programozás lépésről lépésre, Jedlik Oktatási Stúdió, 2012, ISBN: 978-615-5012-17-4https://reiteristvan.wordpress.com/2012/10/17/c-programozas-lepesrol-lepesre-letoltheto/"

Ajánlott irodalom

"[1] Troelsen, Andrew-Japikse, Philip: C# 6.0 and the .NET 4.6 Framework (Seventh Edition), Apress, 2015, ISBN: 978-1-4842-1333-9 "