.NET moderno per scegliere lo stack giusto e non pagarlo due volte piu avanti
Domande frequenti
.NET Framework e la versione originale, Windows-only, con supporto fino alla versione 4.8.x. .NET 8 (e la serie .NET 5+) e il successore cross-platform, open source, con performance nettamente superiori e ciclo di rilascio annuale. Tutti i nuovi progetti dovrebbero usare .NET 8 o superiore. La migrazione da .NET Framework e raccomandata quando i costi di manutenzione del legacy superano i costi del porting.
.NET MAUI e il framework Microsoft per applicazioni mobile e desktop cross-platform scritte in C#. Sostituisce Xamarin.Forms e permette di condividere la logica tra iOS, Android, Windows e macOS. Va usato quando il target include dispositivi mobili e si vuole un unico codebase. Per applicazioni enterprise Windows-only, WPF resta la scelta piu matura.
Il container DI nativo di .NET (Microsoft.Extensions.DependencyInjection) permette di registrare servizi con tre lifetime: Transient (nuova istanza ogni richiesta), Scoped (stessa istanza per richiesta HTTP), Singleton (stessa istanza per tutta la vita dell'applicazione). I servizi vengono iniettati nel costruttore. In ASP.NET Core il container e configurato in Program.cs tramite builder.Services.
.NET 8 ha introdotto performance significative su Blazor (modalita ibrida), Native AOT per binary compatti, miglioramenti a System.Text.Json e Time abstraction per testabilita. .NET 10 continua con miglioramenti a C# 14 (extension members, field accessor), ulteriori ottimizzazioni AOT e miglioramenti al runtime. Il pattern e chiaro: ogni versione riduce il boilerplate e migliora le performance.