Eseményvezérelt alkalmazások fejlesztése I

Képzés: Programtervező Informatikus BSc, Szoftverfejlesztő (B) szakirány
Tárgykód:
IP-08bEVALK1

Célkitűzés:
A kurzus célja a korábbi objektumorientált programozási ismeretekre alapozva grafikus felületet (GUI-t) használó, eseményvezérelt alkalmazások fejlesztése. A hallgatók az egyszerű, egyablakos alkalmazásoktól a többablakos, többrétegű, adatbázis-adatokkal dolgozó alkalmazásokig végigtekinthetik a felhasználható eszközöket és elsajátíthatják kezelésüket.
A hallgatók a félév során a C++ programozási nyelvre írt Qt keretrendszert használják, és Linux alatt fejleszthetnek alkalmazásokat.


Előfeltétel:

  • Objektumelvű alkalmazások fejlesztése (IP-08abtOEALK, erős).


Szükséges előismeretek:

  • Procedurális és objektumorientált programozás, tervezés (UML).
  • C++ programozási nyelvi alapismeretek, nyelvi könyvtárak (STL).
  • Adatszerkezetek és elemi algoritmusok ismerete.
  • Relációs adatbázis-kezelési alapok (SQL).

 

Számonkérés:
A félév során a hallgatóknak három beadandót, valamint egy géptermi zárthelyit kell teljesíteniük.

  • Beadandók: A beadandók dokumentációból, valamint programból állnak, utóbbi csak a megfelelő dokumentáció bemutatásával értékelhető. A beadandók ötfokozatú skálán értékelhetőek. Csak a kitűzött feladatot megoldó, önállóan megvalósított, letesztelt program fogadható el.
  • Zárthelyik: A géptermi zárthelyire évfolyamszinten a félév végén kerül sor. A zárthelyik értékelése hatfokozatú skálán (0-5) történik az adott feladatrészek megoldásának függvényében. A sikertelen (0-1) zárthelyi javítására, pótlásra van lehetőség.


Értékelés:
A hallgatók a tárgyból aláírást, valamint gyakorlati jegyet szerezhetnek.
Az aláírás előfeltétele a géptermi zárthelyi eredményes (legalább 2 pontos) teljesítése, valamint minden beadandó elfogadtatása (még a géptermi zárthelyit megelőzően).
A gyakorlati jegy a három beadandó feladatra adott pontszám, valamint a zárthelyire kapott pontszám duplájának átlaga.

Beadandó feladatok (2012-2013/2)

1) Egyszerű grafikus felületű alkalmazás

  • Követelmények: A megvalósításnak felhasználóbarátnak, és könnyen kezelhetőnek kell lennie. A szerkezetében törekedni kell az objektumorientált szemlélet megtartására.
  • Dokumentáció: Tartalmaznia kell a feladat elemzését, felhasználói eseteit
    (UML felhasználói esetek diagrammal), a program szerkezetének leírását
    (UML osztálydiagrammal), valamint az esemény-eseménykezelő
    párosításokat és a tevékenység rövid leírását.
  • Mintadokumentáció
  • Mintaprogram
  • Feladatok listája



2) Kétrétegű grafikus felületű alkalmazás

  • Követelmények: A megvalósításban törekedni kell az objektumorientált szemlélet megtartására, és el kell határolni a logikai réteg osztályait a felületi réteg osztályaitól úgy, hogy másik grafikus felület mellett is használhatóak legyenek.
  • Dokumentáció: Tartalmaznia kell a feladat elemzését, felhasználói eseteit (UML felhasználói esetek diagrammal), valamint a program szerkezetének leírását (UML osztálydiagrammal).
  • Mintadokumentáció
  • Mintaprogram
  • Feladatok listája



3) Adatbázis-kezelő alkalmazás

  • Követelmények: A megvalósításban ki kell használni a modell/nézet architektúra által nyújtott lehetőségeket, a megjelenítésben a programnak törekednie kell a felhasználó-barátságra (azonosítók háttérben való automatikus generálásával, értelmezhető tartalommal való lecseréléssel, kiválasztási lehetőségek biztosításával, stb.).
  • Dokumentáció: Tartalmaznia kell a feladat elemzését, felhasználói eseteit (UML felhasználói esetek diagrammal), a program szerkezetének leírását (UML osztálydiagrammal), valamint az adatbázis felépítésének leírását (diagrammal).
  • Mintadokumentáció
  • Mintaprogram
  • Feladatok listája
 

Előadás tematika (2012-2013/2)

1. Grafikus felület és eseményvezérlés, a Qt keretrendszer.
2. Egyszerű, egyablakos felület megvalósítása.
3. Dinamikus felületű alkalmazások.
4. Elemi grafika és egérkezelés.
5. Alkalmazások architektúrája.
6. Összetett alkalmazások megvalósítása.
7. Adatbázis-kezelés elemi eszközökkel.
8. Adatbázis-kezelés modell/nézet architektúrában.
9. Adattábla kezelés speciális eszközökkel.
10. Összetett adattábla kezelés.
11. A grafikus nézet, animációk megvalósítása.