En una aplicación wpf, ¿cuál es la responsabilidad del modelo de vista? ¿Puede gestionar todo o solo representar la vista y enviar mensajes/eventos a la capa empresarial y obtener información de ella?¿Debe un modelo de vista contener lógica?
Respuesta
Respuesta corta, sí.
Respuesta larga ...
Los principales objetivos del-View-ViewModel Modelo patrón (MVVM) son: las pruebas unitarias
- Permiso de la lógica de la vista. Estas son pruebas unitarias aplicadas a la capa ViewModel que se ejecuta sin una Vista asociada a ella.
- Facilite el flujo de trabajo desarrollador-diseñador al minimizar la cantidad de código subyacente asociado con sus archivos XAML.
El patrón MVVM también proporciona separación de las preocupaciones entre vista lógica y la lógica de negocio de la misma manera que la MVC y su patrón de interfaz de usuario hacen. Sin embargo, los 2 puntos anteriores son lo que realmente define el patrón MVVM.
Ahora, pensando dónde ubica la lógica de su negocio. Si lo coloca en su ViewModel, ¿sigue siendo válido el n. ° 1 & n. ° 2 anterior? Sí. Si lo coloca en una capa separada, ¿siguen siendo válidos los números 1 y 2? Sí.
Por lo tanto, en ambos casos todavía se están logrando los dos objetivos principales de MVVM. La ruta que toma realmente depende de la complejidad de su aplicación y del número de desarrolladores que trabajan en ella. A medida que estos dos factores aumentan, te beneficiarás de tener 3 capas ... ¡o más!
- 1. Restricción debe contener un primer elemento de diseño NSLayoutConstraint
- 2. ¿Cómo se mantiene la lógica de vista fuera del modelo y la lógica de negocios fuera del modelo de vista en MVVM?
- 3. Actualizando un modelo de vista desde otro modelo de vista
- 4. RFC 1738: URL: ¿el host debe contener un punto?
- 5. Un texto JSON debe contener al menos dos octetos
- 6. ¿Dónde debe implementarse la lógica de validación?
- 7. MVC 3 - Controladores y ViewModels - ¿Cuál debería contener la mayor parte de la lógica de negocios?
- 8. ¿El perfil de un usuario debe ser un modelo separado?
- 9. Cuando el enlace de modelo incluye un bool, ¿qué valor de cadena debe contener la colección de formulario?
- 10. Validación: modelo o modelo de vista
- 11. MVP (Presentador de vista de modelo) o MVC (Controlador de vista de modelo)
- 12. Responsabilidad de un modelo de vista
- 13. MVC: Controlador de vista de modelo: ¿la vista llama al modelo?
- 14. Forma correcta de acceder a un modelo de vista desde un modelo de vista existente
- 15. Establecer un valor predeterminado: ¿lógica de presentación o lógica comercial?
- 16. Lógica de ramificación en una vista MVC
- 17. Aplicaciones WCF/Cliente: ¿a dónde debe ir la lógica comercial?
- 18. MVC donde debería ir la lógica Controlador o el Modelo de Vista
- 19. JavaScript - Marque una cadena que DEBE contener otra cadena
- 20. ¿Tiene un ViewModel su propia lógica?
- 21. MVVM duplicar, Características del modelo en modelo de vista
- 22. Razor Vista del motor: un árbol de expresión no puede contener una operación dinámica
- 23. cómo llenar un modelo de vista en ASP.NET MVC3
- 24. Controlador de vista dividida debe ser controlador de vista raíz
- 25. ¿Debe contener un proyecto de Visual Studio en más de una solución?
- 26. ¿Qué información debe contener un comentario de confirmación de archivo SVN/Versión?
- 27. MVC modelo de vista genérico
- 28. Verificar la salida de "comando" debe contener un bloqueo inesperado con NilClass
- 29. Confusión entre lógica de vista y lógica de dominio en una aplicación web ASP.NET MVC
- 30. llamando a un método en el modelo de la vista
Sí - http://stackoverflow.com/questions/1405739/mvvm-tutorial-from-start-to-finish – Josh