Az újgenerációs .NET platform
A tárgy keretében a hallgatók megismerkednek a .NET 4 platform főbb komponenseivel. A cél, hogy a hallgató megismerje az egyik legkorszerűbb szoftver platformot, annak szolgáltatásait és lehetőségeit, továbbá gyakorlati útmutatót kapjon az ilyen típusú platformokra történő fejlesztésről. A tárgy egy átfogó képet ad hallgatóknak a .NET 3.0-ás és 3.5-ös verzióiban bevezetett nagyobb technológiákról, gyakorlati példákon és problémákon keresztül mutatja be az alkalmazott megoldások jellegzetességeit. Az órák keretében a hallgatók számára lehetőség nyílik az előadás anyagának gyakorlati alkalmazására is.
Követelmények
Szorgalmi időszakban
A félév végén kisházit kell bemutatni az aláíráshoz
Vizsgaidőszakban
Aki maximum 1 gyakorlatról hiányzott, az indulhat a megajánlott jegyért (nagyházival), ahol felhasznált technológiák függvényében 4-est, vagy 5-öst lehet kapni. A többieknek a vizsga szóbeli. A nagyházikat a vizsgaidőszakban, előre egyeztetett időpontban kell bemutatni.
Házi feladat
Az adatok 2012 őszi félévről származnak.
Kisházi
Az alábbiak közül mindegyiknek teljesülnie kell az aláíráshoz
- Felület: WPF
- A hálózati hívások/hosszú folyamatok ne fagyasszák le a felületet
- Kapjunk visszajelzést, ha ezek a hívások nem sikerültek
- A felület nem éri el az adatbázist közvetlenül
- MVVM minta minimális alkalmazása (VM osztály mindenképp kell)
- Adatelérés: EF
- Legalább 3 tábla (nem számítva a MembershipProvider/WF perzisztencia táblákat)
- Optimista konkurenciakezelés
- Komponensek közötti kommunikáció: WCF
Nagyházi
30 pont felett 4-es, 60 pont felett 5-ös.
WPF 4.0, Silverlight 5.0
- A WPF-től eltérő funkciójú Silverlight kliens [10]
- Testreszabható saját control készítése [5-20]
- Textboxban watermark 5
- Grafikonmegjelenítő 20
- MVVM minta alkalmazása valamilyen toolkit segítségével [10-15]
- A teljes WPF kliensben 10
- Mindkét kliensben 15
- Többnyelvű GUI, a .NET beépített lehetőségeinek használatával, legalább egy bonyolult felületen [10]
- A nyelv dinamikusan állítható az alkalmazásfelületről és a beállítás alkalmazásindítások, ill. belépések között sem veszik el +3
- Input validáció egyik kliensben (WPF/SL) [10]
- Másik kliensben +10
- 3D tranzíciók alkalmazása (pl. térben beforgó dialógusablak stb.) [7]
- Saját 3D modellek alkalmazása [5]
- Control template átszerkesztése (min 3 db. vezérlőnél, érdemi módosítások) [7]
- Saját Layout Control készítése [10]
WCF 4.0
- FaultContract használata [5]
- Duplex WCF kommunikáció [7]
- OData feed publikálása WCF Data Services használatával [7]
- Külső OData feed (pl. diplomaterv portál, vagy egyéb) integrálása WCF Data Services használatával [7]
- Nem szokványos WCF binding használata (P2P, MSMQ) [10]
- Tanúsítvány alapú authentikáció kliens oldali tanúsítvánnyal. Bemutatáskor szemléltetés Fiddler-rel [10]
- Titkosított WCF kommunikáció szerver oldali tanúsítvánnyal (pl. HTTPS). Bemutatáskor szemléltetés Fiddler-rel [10]
Entity Framework 4.0+
- Code-First EF modell Entity Framework 5-tel [7]
- Leszármazási hierarchia leképezése Entity Framework-kel (legalább kétszintű, legalább 3 tagú hierarchia) [7]
- MS SQL-től eltérő adatbázis használata ADO.NET-tel (MySQL, Oracle, PostgreSQL, SQL Server CE) [10]
Workflow Foundation 4.0
- Interaktív Windows Workflow [15]
- A workflow adatbázisba menthető/visszatölthető +5
- Designer rehost +5
Kiegészítő, kapcsolódó technológiák alkalmazása
- Rx Framework használata [5-15]
- Néhány alap Rx operátor használata 5
- Két külső adatforrás integrálása 15
- SketchFlow terv egyik klienshez (WPF/SL) [7-15]
- Egy bonyolult felülethez 7
- Legalább 3 felülethez (screen), navigációs kapcsolatokkal (navigation connection) 15
- F# modul készítése és meghívása [7]
- A szerver oldal hosztolása külső szolgáltatónál (pl. sandbox.proserver.hu, nem Azure) [7]
- Külső osztálykönyvtár használata (egy külső komponensért csak egyetlen jogcímen szerezhető pont) [7]
- Külső online szolgáltatás (twitter, facebook, google maps, bing maps, stb.) integrálása az alkalmazásba. Authentikációs szolgáltatás (Live ID, Google Account) is lehet. [7-18]
- Egyszerű REST API, SDK használat nélkül, egyszerű API kulcs alapú authentikáció 7
- SDK-val / REST API-val, authentikációt (pl. OAuth) végrehajtva 15
- felhasználói authentikáció külső authentikációs szolgáltatás használatával 15
- REST API esetén ASP.NET Web API klienskönyvtár használata +3
- Unit tesztek készítése (minimum 10 függvényhez) [7]
- Pesszimista konkurenciakezelés (lock-olás adatbázisban). Bemutatáskor szemléltetés egy konkurenciahelyzet összekattintásával. [15]
- Optimista konkurenciakezelés ütközésfeloldással, azaz a felhasználó választhassa ki, hogy ütközés esetén a 3 adatverzióból (eredeti, általa készített, más által készített) melyik kerüljön be az adatbázisba. Bemutatáskor szemléltetés egy konkurenciahelyzet összekattintásával. [10]
Segédanyagok
- UjgenNET-Jegyzetek.zip: Jegyzetek (Előadás + Laborok) (2013)