

Le novità di .NET 11 e C# 15
Abstract
.NET 11 e C# 15 introducono cambiamenti significativi nel modo in cui scriviamo codice asincrono e modelliamo i dati in C#. In questa sessione esploreremo, con esempi pratici, le feature più rilevanti di questa release.
Partiremo dal Runtime Async (V2), il passo decisivo verso la sostituzione delle state machine generate dal compilatore con una gestione nativa di sospensione e ripresa a livello di runtime: stack trace più puliti e leggibili, minor overhead, JIT dedicato per i metodi async, continuazioni che evitano la cattura di ExecutionContext quando non necessaria, e miglioramenti su tiered compilation e tail call. Vedremo come attivarla (senza più bisogno di EnablePreviewFeatures) e confronteremo gli stack trace prima/dopo.
Passeremo poi alle novità del linguaggio C# 15: gli union types, che permettono di rappresentare un valore come una tra più case type con conversioni implicite e controllo di esaustività nei switch; le closed hierarchies, con il nuovo modificatore closed che fissa a compile-time l'insieme delle classi derivate dirette, abilitando pattern matching esaustivo senza default; e gli extension indexers, che permettono di aggiungere indexer a tipi esistenti tramite extension block.
Un talk pratico per chi vuole rimanere aggiornato sull'evoluzione di .NET e C#, tra performance del runtime e nuove espressività del linguaggio.
Speaker
Andrea Ceroni ricopre il ruolo di senior software architect nel team R&D @Elfo. Ha iniziato la sua carriera lavorando per agenzie pubblicitarie e studi cinematografici, utilizzando Maya e Python. Lavora con .NET C# da oltre dieci anni, con un interesse particolare per le architetture cloud Azure, l'Infrastructure as Code, le applicazioni mobile, il codice asincrono/concorrente e la programmazione funzionale. Orgogliosamente Microsoft MVP da diversi anni e dedica passione ed impegno per supportare le community. Nel tempo libero si dedica alle sue grandi passioni: montagna e MTB!