We use cookies to enhance your browsing experience, serve personalised ads or content, and analyse our traffic.
By clicking "I accept", you consent to our use of cookies.

Estendere C# con Roslyn
Evento:
Community Days 2016
Lingua:
Italiano

Allegati

Speaker

Estendere C# con Roslyn

Scrivere una libreria è un po' come estendere il linguaggio. Tuttavia chi realizza una librerie ha meno libertà e potenza espressiva rispetto a chi progetta un linguaggio: il linguaggio sottostante impone limiti, sia in ciò che è possibile definire che nei vincoli esprimibili. Ad esempio, in C# è possibile vincolare i parametri di una classe generica ad essere a loro volta classi, ma non possiamo vincolarli ad essere interfacce. Attraverso Roslyn (la nuova tecnologia alla base dei compilatori Microsoft), chi crea una libreria può ora includere degli analizzatori compile-time, creando una cosiddetta Code-Aware Library. L'analizzatore custom può implementare logiche complesse, di fatto estendendo i vincoli esprimibili con il normale type system. In questo talk parleremo sia della tecnologia delle Code-Aware Libraries che di un loro utilizzo avanzato, estendendo il C# con un costrutto di cross-cast tra interfacce completamente type-safe.