Programozott játékosok vetélkedője a C++ oktatásban

OData támogatás
Konzulens:
Dr. Kápolnai Richárd Péter
Irányítástechnika és Informatika Tanszék

A féléves munka célja egy új keretrendszer kidolgozása volt, amely alapjául szolgálhat később több, a BMX-hez hasonló funkciót betöltő játék fejlesztésének, ezzel elősegítve a hallgatók ismerkedését akár a C++, akár más objektumorientált programnyelvekkel.

A fejlesztés egyik legfontosabb szempontja a régi rendszer hátrányainak kiküszöbölése volt. A szakdolgozatban egy olyan keretrendszer kidolgozását tűztük ki célul, amelyben az arra fejlesztő oktatónak nem kell foglalkoznia a rendszer olyan – általában sok tervezést és fejlesztést igénylő – elemeinek implementálásával, mint pl. a regisztráció, autentikáció, protokoll, biztonsági követelmények teljesítése, ütemezés, stb. Manapság egy olyan szerver-kliens modellt megvalósító rendszer esetén, amelyet a későbbiekben ilyen típusú alkalmazások alapjául szánnak, a fentebb leírt funkciók megléte szinte alapkövetelmény. Ezt szem előtt tartva sok ötleteléssel és tervezéssel sikerült kialakítani egy olyan rendszert, amelyben a fentebb említett funkciók szigorúan elkülönülnek a játék logikájától, a fejlesztőnek a követelmények betartásán túl csupán a játékot megvalósító funkciók implementálásával kell törődnie. Ez nagy mértékben megkönnyíti egy új játék létrehozását, amely így rövid idő alatt elkészíthető, könnyen tesztelhető lesz.

A létrehozott keretrendszer egy nagy előnyének tartom, hogy annak fentebb említett részei is egymástól – amennyire csak lehet – függetlenül kerültek megvalósításra, továbbá a kliensek és a szerver között váltott üzenetek is a mindennapokban használt SOAP formátumban kerülnek továbbításra, és maga a keretrendszer is könnyen módosítható és bővíthető maradt. Ez lehetőséget nyújt a későbbiekben pl. más programnyelven írt kliensek használatára, különböző operációs rendszeren futó szerver és kliens együttműködésére.

A dolgozatomban bemutatom a tervezés és a fejlesztés fontosabb lépéseit, a létrehozott keretrendszer felépítését, annak tesztelését, továbbá leírást és példákat nyújtok annak biztonságos, kényelmes felhasználásához.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.