Domanda

Attualmente sono incaricato di insegnare a Silverlight (v2) tutti gli sviluppatori, nella società in cui lavoro. L'unico problema è che non ho alcuna vera esperienza Silverlight da solo. Ovviamente ho studiato tutti i dettagli tecnici su cose come la banca dati, il layout ecc. In modo da poter aiutare i miei colleghi. Ma una cosa di cui è difficile trovare informazioni è la struttura generale del progetto.

Ho deciso di seguire il percorso P & amp; P Prism 2 (e forse anche di lanciare un po 'di WPF nel mix in seguito) e quindi mi chiedevo se qualcuno di voi intelligenti avesse esperienza nello sviluppo di un vero progetto usando Prism 2 o anche solo WPF, e se avessi qualche suggerimento sulla struttura del progetto / soluzione? Come " Dove metti le visualizzazioni? & Quot; o " Avete delle convenzioni di denominazione dei progetti del modulo? " ecc.

Qualsiasi aiuto sarà molto apprezzato.

È stato utile?

Soluzione

Questo è puramente basato sulla mia esperienza con Prism for WPF, non con Silverlight. Non sono un esperto di Prism e potrei facilmente cambiare idea su alcuni di questi. : -)

  • È allettante creare un modulo per tutto. Non farlo. Il tuo tempo di costruzione esploderà rapidamente e rimarrai con una soluzione molto fratturata. Invece ho un modulo principale, che viene caricato staticamente e contiene tutto ciò che voglio nel pacchetto base. Eventuali componenti aggiuntivi o extra diventano altri moduli che vengono caricati in modo dinamico. Potrebbe valere la pena abbattere un po 'quel modulo, ma mantenere il numero piccolo. Questo aiuta anche con il tempo di caricamento.

  • Non sono sicuro che sia una buona idea, ma mi piace mantenere le interfacce View e ViewModel nello stesso file di View / ViewModel. Mi piace perché il modello MVVM può produrre molti file e questo mantiene il conto alla rovescia. Il rovescio della medaglia è che Inteface e la sua implementazione sono più difficili da separare, ma è improbabile che debba farlo, e questa tecnica non interferisce con i test, che è l'altro vantaggio.

  • Le viste tendono ad andare in una cartella Viste, quindi in una cartella per ogni Vista. La cartella per ogni Vista include la Vista, il ViewModel e il Presenter se necessario.

  • Dall'implementazione di riferimento, creare un progetto di infrastruttura per tutte le classi comuni che devono essere condivise tra i moduli. L'implementazione di riferimento ha più dettagli, ma può essere utilizzata per ogni genere di cose come interfacce di servizio comuni, costanti, ecc.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top