Objektumelvű Programozás
Tantárgy célja
A tantárgy célja bemutatni az objektumelvű programozási paradigma elemzési, tervezési, megvalósítási és tesztelési aspektusait kisebb méretű objektumelvű alkalmazások készítésén keresztül. A modellezéshez elsősorban UML diagramokat használunk, az alkalmazásokat C# nyelven implementáljuk, és teszteljük.
Tantárgyi tematika
- Az objektum fogalma, az objektum típusának leírása és az osztály fogalma. Objektum-orientált programozási nyelv ismérvei. Objektumok példányosítása, konstruktor és gyártó függvények szerepe.
- Gyűjtemények és azok feldolgozása. Felsorolók fogalma, típusa. Nevezetes felsorolók. Algoritmus minták általánosítása felsorolókra. Feladatok megoldása felsorolókra fogalmazott algoritmus mintákra történő visszavezetéssel. Algoritmus mintákra épülő programok tesztelése.
- Az egyszerűbb objektum-orientált alkalmazások modellezéséhez használt UML diagramok: használati eset diagram, objektum diagram, kommunikációs diagram, osztály diagram, szekvencia diagram, állapotgép diagram.
- Objektumok közötti kapcsolatok ábrázolása az osztály diagramban. A függőség, az asszociáció, az aggregáció, a kompozíció, és a származtatás és ezek objektum-orientált nyelven történő megvalósítása.
- Esettanulmányok tervezési mintákra (egyke, gyártófüggvény, sablonfüggvény, stratégia, állapot, látogató, összetétel, híd, bejáró, gyártófüggvény).
- Objektumok viselkedésének tervezése állapotgép diagramok segítségével. Párhuzamosan tevékenykedő objektumok objektum-orientált nyelven történő megvalósítása. Aszinkron üzenetek és események kezelése.
- A bemutatott feladatok modelljeinek C# nyelven történő implementálása, tesztelése.
Előfeltétel
Programozás
Óraszám
- Heti 2 óra előadás (aszinkron online, MS Stream videókon keresztül, Canvas kvízekkel)
- Heti 2 óra tervezős gyakorlat
- Heti 2 óra kódolós gyakorlat (második óra konzultáció)
Teljesítési feltételek
- 10 db előadáshoz kapcsolódó kvíz legalább 75%-os teljesítéssel, határidőre
- Tervezős gyakorlatokon a +/- kérdések legalább fele + legyen
- 5 db kis beadandó (a 10-ből 5 kiválasztott, határidőre leadva)
- 1 db nagy beadandó (specifikáció a 7. hétre, modell a 11. hétre, teljes dokumentáció a 13. hétre; kód és bemutatás a gyakorlatvezetőnek)
- 2 db tervezős zárthelyi legalább elégséges eredménnyel (csak egy javítható)
- 1 db kódolós zárthelyi legalább megfelelt eredménnyel (egyszer javítható)
- Lehetőség van további szorgalmi feladatokra is
Gyakorlati jegy számítása
(tervezős zh-k jegyei + kódolós zh jegye + beadandó jegye) / 4 + 0.1 * (szorgalmi feladatok száma), majd egészre kerekítve.
Plágium
Amennyiben a hallgató bármely beadandója vagy házi feladata nagyfokú hasonlóságot mutat más hallgató munkájával vagy bármilyen más forrással, úgy az nem teljesítettnek minősül, és az oktató a gyakorlati jegyet megtagadja.