MVC4WPF
Az MVC4WPF nyílt forrású, bővíthető, automatizált kódminta, amit az Information Control Corporation fejlesztett a Windows Presentation Foundation (WPF) számára. A minta teljes elnevezése hosszú, ezért a rövidítés. Az MVC a modell-nézet-vezérlő mintára utal, a 4 az angol for elöljárószót jelzi, míg a WPF a Windows Presentation Foundationt jelenti.
Első verzióját 2009. július 23-án hozták nyilvánosságra. Az eszköz használatához szükséges a .NET framework 3.5 és a Visual Studio 2008. A 0.9 verzió letölthető a CodePlextől.
Célja főként vállalati alkalmazások fejlesztése, ahol a csapatokban az egyes részterületek specialistái működhetnek együtt. Kisebb projektek számára kevéssé hasznos.
Bővebb leírás
[szerkesztés]Az MVC4WPF két programtervezési mintán alapul, amelyeket rendszerautomatizáció és fejlesztési meggondolások támogatnak. A szerzők inkább az automatizált kódmintára, semmint egy keretrendszerre hivatkoznak,[1] mivel a keretrendszerek saját logikai környezetüket hozzák létre, amihez szükségszerűen alkalmazkodni kell. Ezzel szemben az MVC4WPF környezete rugalmasabb, ami korlátozások nélkül adaptálható a különböző megoldásokhoz. Annyiban hasonlít egy keretrendszerre, hogy könyvtárakat támogat, és használja a XAML nyelvet is, amit a WPF vezetett be. Mindezek egy programtervezési minta jellegzetességeivel ruházzák fel.
Megalkotói Stephen Giffin[2] Háromrészes sorozatot adtak a Channel 9 (discussion forum) csatornán,[3][4][5] amiben elmondták, hogy azért tervezték a MVC4WPF-et, hogy egyesítsék a modell-nézet-vezérlő hajlékonyságát és a PAC szerkezetet, ami hierarchikusan szervezi a szülő-gyerek interakciókat.
Szerkezete
[szerkesztés]A rétegek közötti kommunikációt szerződések határozzák meg, amelyek leírják a protokollt. A szerződések miatt rugalmassá válik a kommunikáció, az adatok létrehozása és kezelése a minta három része között: minden megengedett, ami a szerződések szerint szabad. Például a modell (adat) réteg lehet helyi adatbázis, Web feedek vagy bármi más. Javítja a tesztelhetőséget is, mivel elég a szerződéseknek eleget tenni. Elősegíti a fejlesztők specializálódását is, mert a különböző részeken különböző szakértők dolgozhatnak.[6][7]
A hierarchikus szerkezet a szülő-gyerek mintán alapul.[8] A vezérlők szülőként viselkednek a nézettel és modellel, de más vezérlők is származhatnak belőle. Így a mintát a vezérlő hajtja meg, és a vezérlő más vezérlőktől is szerezhet információt. Mivel emellett még a WPF is kiváló belső információterjesztéssel bír, a szülő-gyerek kommunikáció mindkét irányban hatékonyan működik, ehhez csak kevés támogató kódot kell írni.
Elemei
[szerkesztés]A minta elemei:
- Modell: Felelős az adatok tárolásáért és kezeléséért. Megfeleltethető az adat rétegnek.
- Nézet: A felhasználói felület és az azzal közvetlen kapcsolatban álló kód. Az MVC4WPF mintában a vezérlő gyereke. Három típusa lehet: lap, ablak vagy felhasználó által vezérelt.
- Vezérlő: Ez hajtja meg a mintát, ez tartalmazza az üzleti metódusokat, és indítja a műveleteket. A nézet és a modell szülője.
- Szerződések: Leírják, hogyan kommunikál a modell, nézet és vezérlő egymással. Erősen meghatározzák a fejlesztés menetélt is, ezért ezeket tervezik meg és készítik el először. Az itt leírt kapcsolatok miatt lehet egymástól függetlenül fejleszteni a részeket, hogy mégis kapcsolatba tudjanak lépni egymással.
- Tulajdonságcsomagok: A szerződések elemei. Ezek írják le a szülő és a gyerek függvények által megosztott tulajdonságokat. Szükség esetén a vezérlő egyes tulajdonságcsoportjai is lehetnek.
Jegyzetek
[szerkesztés]- ↑ Archived copy. [2011. július 14-i dátummal az eredetiből archiválva]. (Hozzáférés: 2010. január 26.)
- ↑ Bob Familiar: An Overview of MVC4WPF - Part 3 of 3. ARCast.TV, Channel9 (2010. január 24.) (Hozzáférés: 2018. március 26.)
- ↑ http://channel9.msdn.com/shows/ARCast.TV/ARCastTV-An-Overview-of-MVC4WPF-Part-1-of-3/
- ↑ http://channel9.msdn.com/shows/ARCast.TV/ARCastTV-An-Overview-of-MVC4WPF-Part-2-of-3/
- ↑ http://channel9.msdn.com/shows/ARCast.TV/ARCastTV-An-Overview-of-MVC4WPF-Part-3-of-3/
- ↑ Archived copy. [2011. július 14-i dátummal az eredetiből archiválva]. (Hozzáférés: 2010. január 27.)
- ↑ Archived copy. [2011. július 14-i dátummal az eredetiből archiválva]. (Hozzáférés: 2010. január 27.)
- ↑ Archived copy. [2011. július 14-i dátummal az eredetiből archiválva]. (Hozzáférés: 2010. január 26.)
Fordítás
[szerkesztés]Ez a szócikk részben vagy egészben a MVC4WPF című angol Wikipédia-szócikk fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.