Dall'archivio articoli > ASP.NET Core
Blazor e il pattern Model-View-ViewModel
Per poter utilizzare questa funzionalità, devi fare il login o iscriverti.
Qualche mese fa abbiamo introdotto la gestione dello state-container in Blazor per condividere lo stato dell'applicazione tra diversi componenti: ora esporremo un differente approccio basato sul pattern Model-View-ViewModel.
Questo pattern, anche se nato per essere utilizzato nell'ambito desktop, può essere utilizzato efficacemente per scrivere applicazioni in Blazor, pur se per la sua adozione non viene fornito alcun tipo di supporto nativo. Si tratta di una mancanza che probabilmente non sarà nemmeno colmata nelle future release: infatti gli stessi creatori di Blazor hanno evidenziato come questo sia stato progettato in modo da non avvantaggiare alcun pattern di sviluppo particolare, in modo da favorirne la massima flessibilità nel suo utilizzo.Riguardo a MVVM gli stessi hanno anche affermato che "Blazor nel futuro non favorirà in alcun modo l'adozione di MVVM ma nemmeno ne bloccherà o svantaggerà in alcun modo l'utilizzo".
In questo articolo analizzeremo inizialmente le basi fondanti del pattern, quindi svilupperemo una semplice web application che ne utilizza le peculiarità. Vedremo come l'utilizzo del pattern MVVM in Blazor risulta essere facile e intuitivo, pur senza avere l'ausilio di alcun strumento nativo fornito dal framework, e permette di ottenere diversi vantaggi legati all'organizzazione del codice e delle logiche di funzionamento.
A completamento introdurremo un progetto di unit test che, grazie all'adozione di questo pattern, risulta favorito nella sua implementazione.
Prima di descrivere come implementare il pattern in un progetto Blazor scriveremo qui le basi teoriche che sottendono il suo funzionamento.
Il pattern Model-View-ViewModel (MVVM) è stato introdotto da Microsoft per favorire lo sviluppo in ambito Windows Presentation Foundation (WPF). Ad oggi viene estensivamente usato anche con molti altri framework, per esempio nello sviluppo mobile tramite Xamarin. Il suo intento è quello di separare il codice che gestisce l'interfaccia da quello della logica di business, in modo da semplificarne la scrittura, l'organizzazione e la testabilità.
Nell'ambito del pattern vengono identificati i seguenti componenti costitutivi.
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.