Interfacce .NET con WPF, Blazor e MAUI per prodotti che le persone riescono davvero a usare

Domande frequenti

WPF e per applicazioni desktop Windows-only con interfacce ricche e MVVM. .NET MAUI e per applicazioni mobile e desktop cross-platform (iOS, Android, Windows, macOS) con un singolo codebase. Blazor e per applicazioni web interattive scritte in C# invece di JavaScript. La scelta dipende dal target: se vuoi solo Windows desktop scegli WPF, se vuoi mobile usa MAUI, se vuoi web usa Blazor.

Si. Blazor e in produzione in molte applicazioni enterprise, specialmente con la modalita Server (stabile dalla versione 3.1) e la modalita ibrida introdotta con .NET 8. Le limitazioni principali riguardano il SEO per Blazor WebAssembly (risolvibile con prerendering) e il tempo di caricamento iniziale per WASM. Per applicazioni interne (intranet, backoffice, tool) Blazor e gia una scelta matura.

Un progetto MAUI scalabile separa la logica di business in una libreria .NET standard condivisa, usa MVVM con un framework come CommunityToolkit.Mvvm per ridurre il boilerplate, gestisce la navigazione con Shell, e usa Dependency Injection tramite MauiAppBuilder. Questa struttura permette di condividere il massimo codice tra piattaforme e di testare la logica indipendentemente dall'UI.

Il data binding e il meccanismo che sincronizza automaticamente i dati tra il modello (ViewModel o dati) e l'interfaccia visuale. In WPF usa XAML con Binding e INotifyPropertyChanged. In Blazor usa la direttiva @bind. In MAUI usa lo stesso sistema di WPF. Senza data binding il codice UI diventa imperativo e difficile da testare, con data binding diventa dichiarativo e il ViewModel e completamente testabile senza UI.

Versione 0.1.0Note di rilascio