
26/05/2017, 12:39
|
(Desactivado) | | Fecha de Ingreso: enero-2015
Mensajes: 393
Antigüedad: 10 años Puntos: 52 | |
Respuesta: Explicación MVVM con WPF Ok a ver... hay muuuuucho para hablar de este tema. Voy a comenzar por decir que MVVM es un patrón y NO una regla. Es decir, no hay una única manera de implementarlo y dependiendo de cuestiones de coding style, y necesidades del proyecto podes usar un approach mas purista o menos purista.
En general lo mas similar a WPF que he encontrado hasta ahora es Angular. Si conocés Angular te va a resultar fácil entender el paradigma de MVVM en WPF porque hay realmente muchas similitudes conceptuales.
Caso contrario, algunas de las principales diferencias con el modelo tradicional MVC:
- En MVVM, la vista "conoce" al VM, pero el VM no "conoce" a la vista. El VM conoce al Modelo y realiza operaciones sobre este.
- En MVVM, se usa DataBinding para conectar la vista al VM y al Model. Esta es la razon para que exista INotifyPropertyChanged.
En general yo te diria que para simplificar, siempre que puedas bindees directamente al modelo, y no al VM.
Lo mas simple que se me ocurre es esto:
- Model: Entidades con INotifyPropertyChanged
- VM: Expone instancias de entidades y los metodos para ejecutar acciones sobre los mismos.
- View: XAML + eventos que pueden llamar al VM, ya sea mediante Commands o mediante Code Behind.
Si tenes alguna pregunta mas especifica tal vez te pueda ayudar mejor |