Cserép Máté honlapja


Gyorslinkek: tartalom, navigáció.


Oktatás » ELTE » Eseményvezérelt alkalmazások fejl. 2 » 2017/2018 ősz


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 kurzus az általános ismeretek (módszerek, architektúrák) mellett egy átfogó képet ad a platform lehetőségeiről, és betekintést nyújt számos technológiájába (Windows Forms, Windows Presentation Foundation, Xamarin).

Előfeltételek

  • Objektumelvű alkalmazások fejlesztése (erős)

Szükséges előismeretek

  • Objektumorientált programozás és tervezés (UML), háromrétegű szoftver architektúrák.
  • Grafikus felületű alkalmazások felépítése és működése, eseményvezérlés.

Számonkérés

A hallgatók a tárgyból a félév során három beadandó feladatot, valamint egy géptermi zárthelyit kell teljesíteniü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, hibátlanul működő, letesztelt program fogadható el. A kiírásban megadott időpontig beadott, és utólag elfogadott beadandó értékelése 5-ös. Minden hét csúszás egy jegy levonást eredményez.
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 lesz lehetőség. A zárthelyi megírása során mindennemű írásos segédeszköz, továbbá - a kommunikációs szolgáltatásokat kizárva - Internet használható.

É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ó legalább elégséges (2) szintre történő beadása és elfogadtatása. Amennyiben a hallgató nem tudja megvédeni valamely beadandóját, vagy megállapíthatóan nem önálló munkát adott be, akkor a gyakorlati jegy megtagadásra kerül.
A gyakorlati jegy a két beadandó feladatra adott pontszám, valamint a zárthelyire kapott pontszám duplájának átlaga.

Előadás tematika

  1. Bevezetés (prezentáció)
  2. A .NET platform és a C# programozási nyelv (prezentáció)
  3. Tanítási szünet (UNESCO Egyetemi Sport Nemzetközi Napja)
  4. Windows Forms alapismeretek, eseményvezérlés (prezentáció)
  5. Windows Forms dinamikus felhasználói felület, elemi grafika (prezentáció)
  6. Windows Forms alkalmazások architektúrája és tesztelése (prezentáció)
  7. Windows Forms alkalmazások párhuzamosítása
  8. Windows Presentation Foundation (WPF) alapismeretek
  9. Őszi szünet
  10. WPF alkalmazások architektúrája
  11. Összetett WPF alkalmazások
  12. WPF erőforrások kezelése
  13. Xamarin alapismeretek
  14. Platformspecifikus Xamarin alkalmazások

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ő. Csak funkcionálisan teljes, a feladatnak megfelelő, önállóan megvalósított, személyesen bemutatott program fogadható el.

Dokumentáció követelményei

A dokumentációnak jól áttekinthetőnek, megfelelően formázottnak kell lennie, tartalmaznia kell a fejlesztő adatait, a feladatleírást, valamint az egyes feladatcsoportokban megszabott tartalmat.
A dokumentáció ne tartalmazzon kódrészleteket, illetve képernyőképeket. A megjelenő diagramokat megfelelő szerkesztőeszköz segítségével kell előállítani.
A dokumentációt elektronikusan, PDF formátumban kell leadni.

Program követelményei

Csak a funkcionálisan működő, felhasználó barát (könnyen használható, szép, öndokumentáló), kódolását tekintve átlátható, tetszetős megoldásokat tartalmazó programot fogadunk el. A feladat kitűzése csak a funkcionális követelményeket tartalmazza.
A megvalósításban a fejlesztőkörnyezet által biztosított valamennyi nyelvi elem és lehetőség használható, a kódolási stílusnak meg kell felelnie az előadáson és gyakorlaton látottaknak. A programnak hibatűrőnek (hiba esetén ne omoljon össze), valamint bolondbiztosnak kell lennie (kezelje a hibás bevitt adatokat), és kezelnie kell a feladatnak megfelelő bemeneteket. A program működése során legyen informatív (idegen felhasználónak is látnia kell, hogy mit tesz a program).

Leadás és bemutatás

A beadandókat egyrészt elektronikusan kell leadni, másrészt személyesen kell bemutatni.
Az elektronikus leadás egységesen a http://assignment.elte.hu/ beadandókezelő rendszeren keresztül történik. A weboldalra a dokumentációt (PDF formátumban), valamint a forráskódot kell feltölteni ZIP formátumban csomagolva. (A lefordított programot tartalmazó bin, obj, a NuGet függőségeket tartalmazó packages, valamint bármilyen, a fordításhoz szükségtelen könyvtárat nem kell beküldeni).
A személyes bemutatás a beadandó védése, amely során válaszolni a feltett kérdésekre, esetlegesen el kell végezni a kért módosításokat.

Értékelés

A beadandók ötfokozatú skálán értékelhetőek. A kiírásban megadott időpontig beadott és elfogadott beadandó értékelése 5-ös.
A hallgatónak lehetősége van elhalasztani a beadást a kiírt időponthoz képest maximum 3 héttel. Minden hét csúszás egy jegy levonást eredményez. Amennyiben a hallgató bármely beadandójával ezt túllépi, nem jogosult gyakorlati jegyre.
Amennyiben a hallgató a bemutatáskor nem tudja megvédeni a beadandóját, vagy bármely beadandója nagyfokú hasonlóságot mutat más hallgató beadandójával, vagy bármilyen más forrással, úgy az nem teljesítettnek minősül, és a gyakorlati jegy megtagadásra kerül.

Feladatok

  1. Windows Forms 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örekednie kell az objektumorientált szemlélet megtartására. A programot háromrétegű (modell/nézet/perzisztencia) architektúrában kell felépíteni. A modell funkcionalitását egységtesztek segítségével kell ellenőrizni.
    • 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 a tesztesetek ismertetését.
    • Feladatsor, Mintadokumentáció, Mintaprogram
  2. WPF 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örekednie kell az objektumorientált szemlélet megtartására. A programot MVVM architektúrában kell felépíteni. A modell funkcionalitását egységtesztek segítségével kell ellenőrizni.
    • 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 a tesztesetek ismertetését.
    • Feladatsor, Mintadokumentáció, Mintaprogram
  3. Xamarin 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örekednie kell az objektumorientált szemlélet megtartására. A programot MVVM architektúrában kell felépíteni. A modell funkcionalitását egységtesztek segítségével kell ellenőrizni. A megvalósítást csak egy választott platformra kell elkészíteni.
    • 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 a tesztesetek ismertetését.
    • Feladatsor, Mintadokumentáció, Mintaprogram

Zárthelyik

A géptermi zárthelyire évfolyamszinten a félév végén kerül sor, a cél egy grafikus felületű alkalmazás megvalósítása .NET keretrendszerben. 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 lesz lehetőség.

A zárthelyi megírása során mindennemű írásos segédeszköz, továbbá - a kommunikációs szolgáltatásokat kizárva - Internet használható.

Időpontok

  • ZH: december 21. csütörtök, 9:00-13:00, 13:00-17:00, Lovarda
  • Pót ZH: január 18. csütörtök, 9:00-13:00, Lovarda

Irodalomjegyzék

  • Giachetta Roberto: Eseményvezérelt alkalmazások fejlesztése II., ELTE IK Digitális Könyvtár, 2014
  • Reiter István: C# programozás lépésről lépésre, Jedlik, 2012

  • Andrew Troelsen: C# 6.0 and the .NET 4.6 Framework, Apress, 2015
  • Alex Mackey: Introducing .NET 4.5 (Expert's Voice in .NET), Apress, 2012
  • Jeff Martin: Visual Studio 2015 Cookbook, Packt Publishing, 2016
  • Charles Petzold: Creating Mobile Apps with Xamarin.Forms, Microsoft Press, 2015
  • Ed Sneider: Mastering Xamarin.Forms, Packt Publishing, 2016

Ajánlott weboldalak