A 3 nézet sok. Miért sok ember ébred fel minden este 3 órakor? - Alternatív nézet
10 Sztár Akik Tönkretették Karrierjüket
Modern szemvizsgálat szerkesztés ] A mintát Trygve Reenskaug írta le először ben, [5] miután a Smalltalkon dolgozott a Xerox kutatói laborban. Az eredeti megvalósítás részletesen a nagy hatású Applications Programming in Smalltalk How to use Model-View-Controller című tanulmányban olvasható.
Leírás[ szerkesztés ] Gyakori egy alkalmazás több rétegre való felbontása: megjelenítés felhasználói felülettartománylogika és adatelérés.
Az MNV-ben a megjelenítés tovább bomlik nézetre és vezérlőre. Az MNV sokkal inkább meghatározza egy alkalmazás szerkezetét, mint az egy programtervezési mintára jellemző. Modell Az alkalmazás által kezelt információk tartomány-specifikus ábrázolása.
A tartománylogika jelentést ad a puszta adatnak pl. Sok alkalmazás használ állandó tároló eljárásokat mint mondjuk egy adatbázis adatok tárolásához. Az MNV nem említi külön az adatelérési réteget, mert ezt beleérti a modellbe. Nézet Megjeleníti a modellt egy megfelelő alakban, mely alkalmas a felhasználói interakcióra, jellemzően egy felhasználói felületi elem képében.
Navigációs menü
Különböző célokra különböző nézetek létezhetnek ugyanahhoz a modellhez. Vezérlő Az eseményeket, jellemzően felhasználói műveleteket dolgozza fel a 3 nézet sok válaszol rájuk, illetve a modellben történő változásokat is kiválthat.
Végül a modellt a tartalom képviseli, ami általában adatbázisban vagy XML állományokban van tárolva. Habár az MNV-nek sok értelmezése létezik, a vezérlés menete általánosságban a következőképp működik: [9] A felhasználó valamilyen hatást gyakorol a felhasználói felületre pl.
A vezérlő átveszi a bejövő eseményt a felhasználói felülettől, gyakran egy bejegyzett eseménykezelő vagy visszahívás útján.
Hogyan reagál sok ember a III. Világháború, amelynek országainak felkészítése nyilvánvaló: a csapatok és páncélozott járművek mindenütt mozognak, a politikusok durva és korábban elképzelhetetlen kijelentéseket tettek, fenyegetések hallhatók minden oldalról egymásnak.
A vezérlő kapcsolatot teremt a modellel, esetleg frissíti azt a felhasználó tevékenységének megfelelő módon pl. Az összetett vezérlőket gyakran alakítják ki az utasítás mintának megfelelően, a műveletek egységbezárásáért és a bővítés egyszerűsítéséért. A 3 nézet sok nézet közvetve a modell alapján megfelelő felhasználói felületet hoz létre pl.
A nézet a modellből nyeri az adatait.
Tartalomjegyzék
A modellnek nincs közvetlen tudomása a nézetről. A felhasználói felület újabb eseményre vár, mely az elejéről kezdi a kört. A modell és a nézet kettéválasztásával az MNV csökkenti a szerkezeti bonyolultságot, és megnöveli a rugalmasságot és a felhasználhatóságot. Szolgáltatás Service A vezérlő és a modell közötti réteg.
A modelltől kér le adatokat és a vezérlőnek adja azt. Ennek a rétegnek a segítségével az adat tárolás modelladat lekérés szolgáltatás és a adat kezelés vezérlő elkülöníthetőek egymástól.
Kapcsolódó
Mivel ez a réteg nem része az eredeti MNV mintának, ezért használata nem kötelező. Előnyei és hátrányai[ szerkesztés ] Előnyök[ szerkesztés ] Egyidejű fejlesztés — Több fejlesztő tud egyszerre külön a modellen, vezérlőn és a nézeteken dolgozni.
Magas szintű összetartás — MNV segítségével az összetartozó funkciók egy vezérlőben csoportosíthatóak. Egy bizonyos modell nézetei is csoportosíthatóak.
Függetlenség — MNV mintában az elemek alapvetően nagy részben függetlenek egymástól Könnyen változtatható — Mivel a felelősségek szét vannak választva a jövőbeli fejlesztések könnyebbek lesznek Több nézet egy modellhez — Modelleknek több nézetük is lehet Tesztelhetőség - mivel a felelősségek tisztán szét vannak választva, a külön elemek könnyebben tesztelhetőek egymástól függetlenül A MNV hátrányait általában a szükséges extra kódból adódnak.
Kód olvashatósága — A keretrendszer új rétegeket add a kódhoz ami megnöveli a bonyolultságát Sok boilerplate kód — Mivel a programkód 3 részre bomlik a ebből az egyik fogja a legtöbb munkát végezni a másik kettő pedig az MNV minta kielégítése miatt létezik.
Artima Developer Hozzáférés: