ASP.NET Core Razor Pages modellalapú keretrendszer kidolgozása

2018-2019 ősz

Szoftver

Téma leírása

A modern gondolkodásmóddal készített ASP.NET Core keretrendszerének egyik újdonsága a Razor Pages koncepció, mely a felelősségi körök szétválasztásának és az egyetlen felelősség elvének alkalmazása az MVC mintára alkalmazva.

Razor Pages segítségével webalkalmazásunk egy oldala önállóan értelmezhető, minden függőségét definiálva teljesen függetleníthető a környezetétől. Az oldal HTML template-je dinamikusan áll össze a megszokott Razor szintaxissal, viszont ellenben az MVC keretrendszer által használt megoldással, önmaga tartalmazza a mögöttes logikát egy code behind fájlban, melyben az ASP.NET Core által biztosított dependency injection is használható.

A hallgató feladata egy, a hallgató által definiált tetszőleges (legalább közepes komplexitású) példaalkalmazáson bemutatni egy olyan komplex szoftverfejlesztési módot, mely segítségével az alkalmazás maximálisan absztrahálható, gyakorlatilag megszűnik a kódmásolás lehetősége és jelentősen nő az alkalmazás tesztelhetősége.

Az említett komplex szoftverfejlesztési módszer lényege, hogy aspektus-orientált módszerekkel, reflexióval és metaosztályokkal írja le az alkalmazás működését a megszokott, imperatív módszerekkel szemben.

Tekintettel arra, hogy a Razor Pages kizárólag szerveroldali renderelést tesz lehetővé, a téma folytatásaként elképzelhető ugyanezen megoldásra alapozva egy ezt komplementáló kliensoldali (JavaScript) adatkötő- és eseménykezelő keretrendszer elkészítése.

 

Elképzelhető, hogy a témában a megszokottnál jobban el kell mélyülnie a hallgatónak, így csak határozott, a feladat méretétől nem elriadó hallgató jelentkezését várom.

Feltételek

  • Korábbi félévben kezdett téma folytatása

Maximális létszám: 1 fő

Konzulens

Szabó Gábor fényképe