Cserép Máté honlapja


Gyorslinkek: tartalom, navigáció.


Oktatás » ELTE » Webes alkalmazások fejlesztése » 2016/2017 tavasz


Célkitűzés

A kurzus célja a hallgatók megismertetése a webes, illetve hálózati technológiák programozási lehetőségeivel egy objektumorientált, eseményvezérelt környezetben, valamint betekintés a számítási felhők által nyújtott lehetőségekbe.
A félév célterületei a dinamikus weblapfejlesztés és webszolgáltatások, valamint a felhő-alapú alkalmazások megvalósítása. A félév során alkalmazott platform a .NET keretrendszer 4.5-s változata, amelynek kurrens technológiái kerülnek ismertetésre (ASP.NET, WebAPI, TPL).

Előfeltételek

  • Eseményvezérelt alkalmazások fejlesztése 2. (erős)

Szükséges előismeretek

  • Alapvető webes technológiák (HTML, CSS).
  • Objektumorientált és eseményvezérelt programozás, modellezés (UML).
  • C# programozási nyelvi és .NET keretrendszer alapismeretek.
  • Grafikus felületű alkalmazások (WPF), eseményvezérlés.
  • Relációs adatbázis-kezelési alapok (SQL).

Számonkérés

A hallgatók a tárgyból a félév során két 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 használható, továbbá a hallgatók részére elérhető lesz saját beadandóik forráskódja. A zárthelyi alatt hálózat nincs, csak az előadás honlapja érhető el.

É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. Webes alkalmazások és biztonságuk (prezentáció)
  3. -
  4. ASP.NET MVC: webfejlesztés MVC architektúrában (prezentáció)
  5. ASP.NET MVC: objektumrelációs adatkezelés (prezentáció, utazási ügynökség)
  6. ASP.NET MVC: megjelenítés és tartalomkezelés (prezentáció, utazási ügynökség, képek)
  7. ASP.NET MVC: adatbevitel és validáció (prezentáció, utazási ügynökség)
  8. ASP.NET MVC: állapotfenntartás
  9. ASP.NET MVC: autentikáció és autorizáció (prezentáció, utazási ügynökség)
  10. Tavaszi szünet
  11. ASP.NET WebAPI: webszolgáltatások megvalósítása (prezentáció, utazási ügynökség)
  12. Neumann-Nap
  13. ASP.NET WebAPI: webszolgáltatások felhasználása
  14. ASP.NET WebAPI: szolgáltatás alapú rendszerek megvalósítása
  15. ASP.NET WebAPI: szolgáltatás alapú rendszerek megvalósítása
Az 1. gyakorlati csoport oldala.

Gyakorlati tematika

  1. -
  2. Bevezetés
  3. Konzultáció
  4. Konzultáció
  5. ASP.NET MVC & Entity Framework (TodoList, Skeleton)
  6. Konzultáció
  7. Konzultáció
  8. Konzultáció
  9. Konzultáció
  10. Tavaszi szünet
  11. ASP.NET WebAPI (TodoList, Skeleton)
  12. Beadandó bemutatás
  13. Beadandó bemutatás
  14. Beadandó bemutatás

Választható feladatok

  • A tartalom megtekintése autentikációhoz kötött. Hitelesítsd magad.

Beadandó határidők

  • 1. beadandó elkészítése: április 18. kedd 23:59
  • 2. beadandó elkészítése: május 7. vasárnap 23:59

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 a Subversion verziókezelő rendszeren keresztül történik. A tárolóban a dokumentációt (PDF formátumban), valamint a forráskódot kell elhelyezni (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 tároló URL címe:
http://psztsrv.inf.elte.hu/svn/waf/<Neptun kód>/
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.

SVN hozzáférés

  • A tartalom megtekintése autentikációhoz kötött. Hitelesítsd magad.

Feladatok

Feladatsor

  1. ASP.NET webes felhasználói felület
    • Követelmények: A weblapot ASP.NET MVC keretrendszerben kell megvalósítani, kihasználva az általa adott funkcionalitást (állapotkezelés, validáció, authentikáció). Az adatokat adatbázisban kell tárolni, és ADO.NET Entity Framework segítségével kell kezelni.
    • Dokumentáció: Tartalmaznia kell a feladat elemzését, felhasználói eseteit (UML felhasználói esetek diagrammal), a rendszer szerkezetének leírását (UML komponensdiagrammal és osztálydiagrammal), az adatbázis felépítését (egyedkapcsolati diagrammal).
  2. WPF adminisztrációs alkalmazás
    • Követelmények: A megvalósításban az előző feladat megoldásából kell kiindulni. Az alkalmazást MVVM architektúrában kell felépíteni, amelynek modellje biztosítja a kapcsolatot a korábban felépített adatbázissal egy ASP.NET WebAPI webszolgáltatás segítségével, amelynek funkcionalitását külön 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), az alkalmazások szerkezetének leírását (UML komponensdiagrammal és osztálydiagrammal), az adatbázis felépítését (egyedkapcsolati diagrammal), a webszolgátatás felületének leírását, valamint a tesztesetek listáját.

Zárthelyik

A géptermi zárthelyire évfolyamszinten a félév végén kerül sor, a cél egy webes 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 használható, továbbá a hallgatók felhasználhatják a félév során elkészített beadandóikat. A zárthelyi alatt hálózat nincs, csak a tárgy honlapja érhető el.

Időpontok

  • ZH: május 23. kedd, 9:00-12:00, 12:00-15:00, Lovarda
  • Pót ZH: június 13. kedd, 12:00-15:00, Lovarda

Feladatok

Irodalomjegyzék

  • Giachetta Roberto: Webes alkalmazások fejlesztése, ELTE IK Digitális Könyvtár, 2016
  • Regius Kornél: ASP.NET MVC 4+, 2013
  • Reiter István: ASP.NET MVC Web API, 2013

  • 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
  • Jon Galloway: Professional ASP.NET MVC 5, Wrox, 2014
  • Mark J. Price: C# 6 and .NET Core 1.0: Modern Cross-Platform Development, Packt Publishing, 2016

Ajánlott weboldalak