2010-03-29 22 views
22

Tengo unos tres años de experiencia en C#. Me gustaría aprender un poco de WPF y el patrón MVVM. Hay muchos enlaces a los artículos en este sitio, pero me siento un poco abrumado. ¿Sería un enfoque sensato para un principiante olvidarse de mvvm por un tiempo y simplemente aprender rápidamente un poco de WPF, y luego volver a MVVM?Aprendizaje de WPF y MVVM: el mejor enfoque para aprender desde cero

Tenía una hoja a través de Application=Code+Markup - Charles Petzold en el trabajo de hoy, no parece mencionar MVVM (al menos no en el índice). Me sorprendió bastante, ya que pensé que MVVM se suponía que era la "lingua franca" de WPF.

También me acaba de comenzar a trabajar en una nueva empresa y que están usando MVVM con WinForms, nadie ha llegado a través de esto antes?

¿Alguien puede recomendar un libro que me va a enseñar tanto WPF y MVVM?

+0

El patrón MVVM es un método popular para la simplificación y desenredar las aplicaciones de WPF, pero no es el único uno. Descubrí que TMTOWTDI (hay más de una forma de hacerlo) definitivamente se aplica a WPF. – dthrasher

+0

Este libro es exactamente lo que necesita: "Aprenda WPF MVVM" https://www.amazon.com/dp/B01M365NCZ Le enseña WPF en poco tiempo, y luego le presenta a MVVM. Descargo de responsabilidad: es mi libro.:-) ¡Buena suerte en tu aprendizaje! –

Respuesta

26

Depende de su experiencia.

personalmente me pareció que esta era una zona carente de discusiones MVVM, que fue lo que me llevó a escribir mi serie sobre MVVM and WPF from a Windows Forms developer perspective.

no intentaría aprender WPF MVVM sin aprender. Al final, tratarás de "desaprender" muchos aspectos, ya que WPF realmente no tiene sentido, completamente, hasta que comprendas la separación entre presentación y lógica que está presente en toda la arquitectura. MVVM realmente está ampliando esta misma separación en el espacio de la aplicación.

En cuanto a "MVVM en Windows Forms" - una gran cantidad de personas tratan de hacer esto, pero no es realmente MVVM. Para poder hacer "MVVM", necesita acceder a una forma más completa de enlace de datos de la que proporciona Windows Forms. "MVVM en Windows Forms" es realmente, típicamente, solo Model-View-Presenter con un nombre diferente (montando el carro de MVVM, supongo), pero no es lo mismo que MVVM en WPF.

+0

WPF sin MVVM es desconcertante y frustrante. WPF con MVVM es liberador y emocionante. –

+0

WPF realmente requiere alguna forma de separación de preocupaciones o simplemente no tiene sentido ... –

+0

Gracias por la serie, he estado buscando información decente de Winforms-> WPF. – Paolo

4

No hay muchos libros que cubren MVVM pero hay uno: Advanced MVVM

Pero hay un montón de recursos en línea y ésta es una lectura obligada: WPF Apps With The Model-View-ViewModel Design Pattern

Después de que yo sugiero mirar en los marcos como

+2

+1 cuando jugaba con WPF y MVVM el pasado fin de semana, casi de inmediato me encontré con la limitación de que no podía vincular los manejadores de eventos al modelo de vista. Los frameworks que enlazas parecen arreglar eso, ¡así que definitivamente los revisaré! –

11

Jason Dolinger tiene un excelente video sobre el tema. Lo guía paso a paso por el proceso de pasar del código detrás de los archivos a un patrón MVVM completo que incluye Inyección de Dependencia y Pruebas.

Bill Steele hicieron una serie de transmisión en 16 parte "sopa a las nueces" en WPF. Los enlaces en el sitio de msevents están rotos. Aquí hay un Google search para encontrarlos. Esto ayudará con la curva de aprendizaje de WPF. Y él NO usa ningún patrón MV * en sus ejemplos.

EDITAR: Los enlaces MSEvents están funcionando ahora, dejo el Google search como una copia de seguridad.

Josh Smith también tiene un excelente artículo WPF Apps With The Model-View-ViewModel Design Pattern en MSDN.

Código Trashumancia: patrones de presentación con Jeremy Miller, Ward, Bell, Rob Eisenberg y Glenn Bloque

MIX10:

Y, por supuesto Reed Copsey de MVVM articles son vale la pena leer también.

+1

ese video de Jason Dolinger es un gran comienzo. –

+1

Sí, el video de Jason Dolinger es lo que finalmente me dio la bombilla. Muy recomendable. – billb

5

Me dijeron algunas veces que mi sesión MIX10 explicaba el patrón MVVM lo suficientemente bien para los principiantes (aunque algunas partes son bastante avanzadas, así que no se preocupe si necesita volver a ver ciertas partes).

La sesión está en http://live.visitmix.com/MIX10/Sessions/EX14

Lo siento por la auto-promoción.

Cheers, Laurent

+0

@Laurent: Me perdí esa autopromoción antes de agregar tu sesión a mi respuesta. :) – VoidDweller

+0

+1 ¡Encontré tu video de techdays en mvvm muy útil! =) http://channel9.msdn.com/Blogs/kreekman/TechDays-2010-Understanding-the-Model-View-ViewModel-pattern – gideon

0

para hacer cosas grandes (como el aprendizaje de WPF MVVM +) es mejor para romper la tarea en pasos más pequeños.

Creo que el mejor enfoque en esta situación es comenzar aprendiendo la parte UI de Wpf. Aprende la sintaxis XAML, el sistema de diseño, los controles disponibles y olvida el enlace y cómo entregar datos a los controles.

Una vez que conozca los conceptos básicos de UI de Wpf, es hora de pasar a MVVM. Aprenda cómo funcionan las vinculaciones y el patrón MVVM.

En esta web se puede encontrar un tutorial se centra en las manos, pero con la teoría disponible:

http://www.learnmvvm.com

+0

Descargo de responsabilidad: Soy el autor del sitio Espero que esto no sea un problema. –

Cuestiones relacionadas