Modell-View-ViewModel
Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2021. június 8-án felülvizsgált
verziótól ; az ellenőrzések 6 szerkesztést igényelnek .
A Model-View-ViewModel (MVVM) egy alkalmazásarchitektúra-tervezési minta. John Gossman vezette be 2005-ben a Prezentációs Modell sablon módosításaként. Olyan modern fejlesztői platformokra összpontosít, mint a Windows Presentation Foundation , a Microsoft Silverlight [1] , a ZK keretrendszer .
Időpont
A modell és a nézet elválasztására szolgál, ami szükséges a külön változtatásukhoz. Például a fejlesztő állítja be az adatokkal való munka logikáját, a tervező pedig a felhasználói felülettel dolgozik.
Használat
Kényelmes az MVVM használata a klasszikus MVC és hasonlók helyett olyan esetekben, amikor a fejlesztés alatt álló platform „ adatkötéssel ” rendelkezik. Az MVC / MVP tervezési mintákban a felhasználói felület változásai nem érintik közvetlenül a modellt, hanem először a Controlleren vagy a Presenteren mennek keresztül . Az olyan technológiák, mint a WPF és a Silverlight , rendelkeznek az „adatkötés” fogalmával, amely lehetővé teszi az adatok vizuális elemekhez való kötését mindkét irányban. Ezért ennek a technikának a használatakor az MVC modell használata rendkívül kényelmetlenné válik, mivel a nézethez való adatkötés nem illeszkedik közvetlenül az MVC / MVP koncepcióba.
Leírás
Az MVVM minta három részre oszlik:
- Modell ( Eng. Model ) (akárcsak a klasszikus MVC-ben) az adatokkal való munka logikája és az alkalmazás működéséhez szükséges alapvető adatok leírása.
- Ábrázolás ( angol nézet ) - grafikus felület (ablakok, listák, gombok stb.). Előfizetőként működik a ViewModel által biztosított tulajdonságok vagy parancsok értékeinek megváltoztatása esetén. Ha valamely tulajdonság megváltozott a Nézetmodellben, az minden előfizetőt értesít arról, a Nézet pedig kéri a tulajdonság frissített értékét a Nézetmodelltől. Ha a felhasználó interakcióba lép a felület bármely elemével, a Nézet meghívja a Nézetmodell által biztosított megfelelő parancsot.
- A ViewModel egyrészt a Nézet absztrakciója , másrészt a kötendő Modell adatcsomagolója. Vagyis tartalmazza a Nézetté konvertált modellt, valamint azokat a parancsokat, amelyekkel a Nézet befolyásolhatja a modellt.
Megvalósítások
.NET
Javascript
Swift
Lásd még
Linkek
- ↑ Bevezetés a WPF-alkalmazások létrehozásához szükséges Model/View/ViewModel mintába . Letöltve: 2010. november 13. Az eredetiből archiválva : 2011. június 12. (határozatlan)