Az objektum orientált programozás alapjai

Informatika
Eszterházy Károly Katolikus Egyetem
3 kredit

Oktatók: Kovásznai Gergely, Troll Ede, Balla Tamás

Jelentkezz!

Nincs felvehető kurzusidőpont.

Lezárt időpontok

2019/20/1
Magyar
2019. szeptember 22.2020. január 5.
2019. szeptember 9.
 – 
2019. szeptember 29.
2018/19/2
Magyar
2019. február 24.2019. június 2.
2019. február 10.
 – 
2019. február 25.
2018/19/1
Magyar
2018. szeptember 23.2018. december 21.
2018. szeptember 9.
 – 
2018. szeptember 26.
2017/18/2
Magyar
2018. február 21.2018. május 27.
2018. február 4.
 – 
2018. február 20.
2017/18/1
Magyar
2017. szeptember 15.2017. december 16.
2017. szeptember 3.
 – 
2017. szeptember 24.

Kedvcsináló

Napjaink uralkodó programozási paradigmájának, az objektum orientált programozásnak (OOP) az eszközei és újszerű technológiái a C# programozási nyelven keresztül bemutatva.

Leírás

Mi napjaink uralkodó programozási paradigmája? Az objektum orientált programozás (OOP). A szoftverfejlesztést tanuló hallgatók legnagyobb hányada szoftverfejlesztőként is ebben a paradigmában fog „alkotni”, akár banki szoftverek, akár vállalatirányítási rendszerek, akár web- vagy mobilalkalmazások stb. fejlesztésében fog részt venni.

Mik az OOP elméleti alapjai? Hogyan tudjuk mindezt átültetni a gyakorlatba? Milyen OOP programozási nyelvek léteznek?

A C# programozási nyelvben milyen formában jelennek meg az OOP eszközei? Hogyan fogunk egy életből vett programozási problémát modellezni OOP alapokon? A kialakult modellt hogyan tehetjük minél inkább újrahasznosíthatóbbá, illetve milyen stratégiákat alkalmazzunk?

Hogyan készítsük fel a programjainkat a futás közbeni hibákra? Hogyan kezeljük ezeket a kivételes helyzeteket?

Hol tart jelenleg a C# programozási nyelv? Milyen újszerű technológiai megoldások között tud válogatni a programozó?

Követelmények:

A kurzus teljesítéséhez a hallgatóknak meg kell oldaniuk a modulzáró teszteket. Az egyes modulokban előírt programozási feladatok megoldásait fel kell tölteniük. Félév végén egy a tanárokkal egyeztetett személyes vagy skype beszélgetés keretében kell a megszerzett tudásukról számot adniuk.

Tanmenet

  1. OOP története. OOP alafogalmak és alapelvek. Osztályok, mezők, metódusok. Védelmi szintek. Property-k. A kivételkezelés alapjai.
  2. Konstruktorok írása, a példányok alaphelyzetbe állítása. A this referencia. Konstruktor hívása konstruktorból a this kulcsszó segítségével.
  3. Objektum kollekciók, konténer osztályok. Adatok beolvasására.
  4. Névterek. Szöveges állományok és Excel fájlok kezelése adatok beolvasására, példányok ezen adatokból való létrehozása.
  5. Példányszintű és osztályszintű mezők, konstansok. Osztályszintű és osztályszintű metódusok, property-k. Indexerek. Operátor overloading: unáris és bináris operátorok esetén.
  6. Az öröklődés alapjai: mezők, metódusok, property-k öröklése, újak hozzáadása. A protected védelmi szint szükségessége és használata.
  7. Az ősosztály konstruktorának hívása a gyerekosztály konstruktorából, a base kulcsszó használata. A konstruktor hívási lánc bemutatása, és annak használata. Object factory. Osztályszintű konstruktor definiálása.
  8. Metódusok felüldefiniálásának kérdései és lehetőségei. Virtuális metódusok. A késői kötés megismerése és működése.
  9. Típuskompatibilitás OOP-ben és az Object osztály bemutatása. Típuskompatibilitás-ellenőrzés az „is” és típuskényszerítés az „as” operátorok használatával.
  10. Sealed osztályok, metódusok és property-k. Static osztályok. Abstract osztályok, metódusok és property-k. Interfészek definiálása és azok implementálása. A .NET fontos interfészei és azok használata.
  11. Az Object osztály és Object kollekciók. Boxing és unboxing. Generikus kollekciók. Saját generikusok. Generikusokra adható megkötések.
  12. Hibakezelési módszerek hagyományos eszközökkel. Kivételkezelés. Meglévő és saját kivételosztályok használata.
  13. Delegate-ek fogalma, használata. Generikus delegate-ek. Az események (event) fogalma és használata. Anonim delegate-ek használata.
  14. A C# deklaratív elemei. Lambda kifejezések. A .NET gyakran használt generikus delegate-jei. A LINQ bővítő metódusok megismerése és használata.
Létrehozva: 2017. 01. 26, utoljára módosítva: 2020. 02. 15.