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!

A kurzushoz nincs felvehető időpont. Nézz vissza később!

Lezárt időpontok

2019/20/1
Magyar
22 September 20195 January 2020
9 September 2019
 – 
29 September 2019
2018/19/2
Magyar
24 February 20192 June 2019
10 February 2019
 – 
25 February 2019
2018/19/1
Magyar
23 September 201821 December 2018
9 September 2018
 – 
26 September 2018
2017/18/2
Magyar
21 February 201827 May 2018
4 February 2018
 – 
20 February 2018
2017/18/1
Magyar
15 September 201716 December 2017
3 September 2017
 – 
24 September 2017

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.