2010-12-10 14 views
8

Ho appena iniziato l'apprendimento .net, WPF, WCF e MVVM, e la mia domanda è:Implementazione del proprio MVVM rispetto all'utilizzo di un framework MVVM?

è meglio implementare proprio MVVM o utilizzare un framework MVVM come toolkit MVVM Luce, Prism (è troppo avanzato e ha un quadro di unità (non è sicuro di come aiuta nello sviluppo))?

+2

Se hai Ho appena iniziato a imparare .Net, quindi l'ultima cosa a cui dovresti pensare è reinventare i Framework che sono stati creati da alcune persone MOLTO esperti. –

+1

Questa domanda simile da me posta ha anche delle buone risposte alla domanda MVVM o PRISM - http://stackoverflow.com/questions/6251821/custom-mvvm-implementation-vs-prism – akjoshi

risposta

6

Se si vuole veramente capire il funzionamento interno di MVVM, provare a implementare il proprio.

Se già comprendi i concetti e non senti la necessità di re-inventare la ruota, usa un Framework. Il prisma è una scelta solida ... provaci.

+0

grazie per la rapida risposta. Ho appena provato a implementare MVVM da zero. Direi che ho ottenuto il concetto a parte poche piccole cose (che ho bisogno di scavare più a fondo) ma MVVM come concetto l'ho capito. Ma quale dovrebbe essere la mia scelta ora? il mio MVVM/Prism/Light, considerando che l'applicazione non è una grande applicazione. – WhoIsNinja

+0

@NSingla - Quindi, a meno che tu non stia cercando di sfidare te stesso per creare un MVVM Framework per competere con Prism ... basta usare un Framework! Nessun motivo per rendere la vita più dura a te stesso. –

+0

fantastico, grazie ho capito il tuo punto. E se salto in Prism devo capire Unity/MEF prima di provare ad implementare MVVM? – WhoIsNinja

3

Non vorrei reinventare la ruota, valutare i quadri e solo se quelli non soddisfano le vostre esigenze dovreste considerare di scrivere il vostro framework.

+0

Questo è corretto, e non si applica solo a MVVM. A meno che tu non stia aggiungendo valore, riutilizzi, riutilizzi, riutilizzi e focalizzi la tua logica di business principale invece di materiale infrastrutturale che altri hanno già fatto. – jason

3

mi piacerebbe suggerire di guardare a questo discorso: Build Your Own MVVM Framework

(se non l'hai ancora)

ho deciso di leggere alcune risorse di vari quadri, poi ho scaricato qualche progetto di esempio sulla base di Caliburn Micro per capire come le cose funzionavano

Caliburn è un grande quadro e forniamo tutto ciò che serve per iniziare e fare un giro in profondità nel MVVM

io suggerirei di iniziare usandolo, e forse, quando ti senti abbastanza a tuo agio, potresti provare a personalizzarlo o semplificarlo in base alle tue esigenze/stile, quindi, se avrai tempo, ne costruirai uno tuo =)

EDIT

MediaOwl è il migliore progetto open source che ho trovato per vedere una buona implementazione di Caliburn Micro in azione, assicuratevi di check it out se si finirà per scegliendo questo quadro

+0

È più semplice di Prisma/Luce implementare e lavorare? – WhoIsNinja

+0

http://www.japf.fr/silverlight/mvvm/index.html questo strumento di confronto mostra che Caliburn micro non è quella buona opzione, secondo questo Caliburn o Light dovrebbe essere la scelta. Sebbene non abbia Prisma nell'elenco. – WhoIsNinja

+1

Caliburn Micro è semplice ma non è un framework di base, è potente perché ha buone funzionalità, MVVM Light è piuttosto semplice e aiuta a capire il modello. È vero che Caliburn Micro non ha TUTTE le funzionalità di cui avrai mai bisogno in MVVVM, ma è molto più semplice da applicare o estendere rispetto alla versione completa di Caliburn. Questa è stata la mia impressione quando ho incluso il codice sorgente dei framework nel mio progetto per avere il controllo su di esso se avessi mai avuto bisogno di modificare alcuni comportamenti per soddisfare meglio le mie esigenze, o per modificare alcune convenzioni – BFil