2010-03-29 11 views
22

Ho circa tre anni di esperienza in C#. Mi piacerebbe imparare alcuni WPF e il pattern MVVM. Ci sono molti collegamenti agli articoli su questo sito ma mi sento un po 'sopraffatto. Sarebbe un approccio ragionevole per un mendicante da dimenticare mvvm per un po 'e imparerai un po' a breve di WPF, quindi torna su MVVM?Apprendimento WPF e MVVM: il miglior approccio per imparare da zero

Ho avuto una copia di Application=Code+Markup - Charles Petzold lavoro oggi, non sembra menzionare MVVM (almeno non nell'indice). Sono rimasto piuttosto sorpreso da questo dato che pensavo che MVVM fosse la "lingua franca" di WPF?

Inoltre, ho appena iniziato a lavorare in una nuova azienda e stanno utilizzando MVVM con WinForms, qualcuno l'ha mai incontrato prima?

Qualcuno può consigliare un libro che mi insegnerà sia WPF che MVVM?

+0

Il modello MVVM è un approccio popolare per la semplificazione e districante applicazioni WPF, ma non è l'unico uno. Ho trovato che TMTOWTDI (c'è più di un modo per farlo) si applica sicuramente a WPF. – dthrasher

+0

Questo libro è esattamente ciò di cui hai bisogno: "Learn WPF MVVM" https://www.amazon.com/dp/B01M365NCZ Ti insegna WPF in pochissimo tempo e poi ti presenta su MVVM. Disclaimer: è il mio libro.:-) Buona fortuna per il tuo apprendimento! –

risposta

26

Dipende dalla tua esperienza.

ho sentito personalmente che questa era una zona priva di discussioni MVVM, che era quello che mi ha portato a scrivere la mia serie sulla MVVM and WPF from a Windows Forms developer perspective.

non vorrei cercare di imparare WPF senza imparare MVVM. Finirai per cercare di "disimparare" molti aspetti, dato che WPF in realtà non ha senso, completamente, finché non comprendi la separazione tra presentazione e logica che è pervasiva in tutta l'architettura. MVVM sta davvero solo estendendo questa stessa separazione nello spazio applicativo.

Per quanto riguarda "MVVM in Windows Form", molte persone provano a farlo, ma in realtà non è MVVM. Per fare "MVVM" è necessario accedere a una forma più complessa di associazione dati fornita da Windows Form. "MVVM in Windows Forms" è in realtà, in genere, solo Model-View-Presenter con un nome diverso (in sordina il carrozzone MVVM, direi), ma non proprio come MVVM in WPF.

+0

WPF senza MVVM è sconcertante e frustrante. WPF con MVVM è liberatorio ed eccitante. –

+0

WPF richiede davvero qualche forma di separazione delle preoccupazioni o semplicemente non ha senso ... –

+0

Grazie per la serie, ho cercato informazioni decenti Winform-> WPF. – Paolo

4

Non ci sono molti libri che coprono MVVM ma c'è un: Advanced MVVM

Ma ci sono un sacco di risorse online e questo è un deve leggere: WPF Apps With The Model-View-ViewModel Design Pattern

Dopo di che vi suggerisco di guardare in framework come

+2

+1 durante la partita con WPF e MVVM lo scorso fine settimana, mi sono quasi imbattuto nella limitazione che non potevo associare gestori di eventi al viewmodel. Le strutture a cui fai il link sembrano risolvere il problema, quindi sicuramente le controllerò! –

11

Jason Dolinger ha un eccellente video sull'argomento. Ti guida attraverso il processo passando dall'uso del codice dietro i file a un pattern MVVM completo, inclusi Iniezione e test delle dipendenze.

Bill Steele ha realizzato una serie di webcast in formato "Soup-to-Nuts" in 16 parti su WPF. I collegamenti sul sito di msevents sono interrotti. Ecco uno Google search per trovarli. Questo aiuterà con la curva di apprendimento del WPF. E NON usa alcun pattern MV * nei suoi esempi.

MODIFICA: i collegamenti MSEvents funzionano ora, sto lasciando il Google search come backup.

Josh Smith ha anche un eccellente articolo WPF Apps With The Model-View-ViewModel Design Pattern su MSDN.

Codice Herding: Patterns presentazione con Jeremy Miller, Ward Bell, Rob Eisenberg e Glenn Block

MIX10:

E naturalmente Reed Copsey di MVVM articles sono la pena di leggere pure.

+1

che il video di Jason Dolinger è un ottimo inizio. –

+1

Sì, il video di Jason Dolinger è quello che finalmente ha colpito la lampadina per me. Altamente raccomandato. – billb

5

Mi è stato detto un paio di volte che la mia sessione MIX10 stava spiegando il pattern MVVM abbastanza bene per i principianti (anche se alcune parti sono in realtà abbastanza avanzate, quindi non preoccuparti se hai bisogno di rivedere certe parti).

La sessione è a http://live.visitmix.com/MIX10/Sessions/EX14

Ci scusiamo per l'auto-promozione.

Cheers, Laurent

+0

@Laurent: mi sono perso quell'autopromozione prima di aggiungere la tua sessione alla mia risposta. :) – VoidDweller

+0

+1 Ho trovato molto utile il tuo video tecnico su mvvm! =) http://channel9.msdn.com/Blogs/kreekman/TechDays-2010-Understanding-the-Model-View-ViewModel-pattern – gideon

0

di fare cose grandi (come imparare WPF MVVM +) è meglio rompere il compito in piccoli passi.

Penso che l'approccio migliore in questa situazione sia l'apprendimento della parte UI di Wpf. Impara la sintassi XAML, il sistema di layout, i controlli disponibili e dimentica il binding e come consegnare i dati ai controlli.

Una volta acquisite le nozioni di base sull'interfaccia utente di Wpf, è giunto il momento di passare a MVVM. Scopri come funzionano i bind e il pattern MVVM.

In questo Web è possibile trovare un tutorial incentrato sulle mani su, ma con la teoria disponibili:

http://www.learnmvvm.com

+0

Disclaimer: Sono l'autore del sito Spero che questo non sia un problema. –

Problemi correlati