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 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, 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 Háromrészes sorozatot adtak a Channel 9 (discussion forum) csatornán,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/ 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 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.
A hierarchikus szerkezet a szülő-gyerek mintán alapul. 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 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
Fordítás
Kategória:Programtervezési minták