Utilizzo di Roslyn per l'analisi e il refactoring di codice C#


Autoria(s): Bonacci, Francesco
Contribuinte(s)

Bellavia, Giuseppe

Data(s)

14/07/2016

Resumo

Microsoft ha introdotto nella versione 2015 di Visual Studio un nuovo compilatore per i linguaggi C# e Visual Basic chiamato Roslyn. Oltre che un compilatore, Roslyn è una piattaforma che mette a disposizione degli sviluppatori servizi per analizzare e modificare progetti .NET, interagire con le varie fasi della compilazione e creare applicazioni per l'analisi e generazione di codice sorgente. Obiettivo della tesi vuole essere lo studio della suddetta piattaforma ed il suo utilizzo nello sviluppo di estensioni per Visual Studio. La tesi si pone pertanto nel contesto delle tecniche di analisi e generazione di codice sorgente. Il lavoro di tesi ha previsto lo sviluppo di due applicazioni facenti uso delle API di Roslyn. La prima applicazione consiste in un analizzatore di codice C# che provvede alla segnalazione di warning riguardanti l'errato utilizzo del costrutto var e all'esplicitazione del tipo relativo. La seconda applicazione riguarda un generatore di codice C# che utilizza i servizi di Roslyn per semplificare e automatizzare la scrittura di codice nel contesto del framework Phoenix. I risultati ottenuti possono essere d'aiuto per un successivo studio della piattaforma Roslyn ed essere usati come punto di partenza per la creazione dei propri applicativi per l'analisi e generazione di codice sorgente.

Formato

application/pdf

Identificador

http://amslaurea.unibo.it/11313/1/Utilizzo_di_Roslyn_per_l_analisi_e_il_refactoring_di_codice_C%23.pdf

Bonacci, Francesco (2016) Utilizzo di Roslyn per l'analisi e il refactoring di codice C#. [Laurea], Università di Bologna, Corso di Studio in Ingegneria informatica [L-DM270] <http://amslaurea.unibo.it/view/cds/CDS0926/>

Relação

http://amslaurea.unibo.it/11313/

Direitos

info:eu-repo/semantics/openAccess

Palavras-Chave #roslyn,compilatore,C#,visual studio,microsoft,phoenix #scuola :: 843884 :: Ingegneria e Architettura #cds :: 0926 :: Ingegneria informatica [L-DM270] #sessione :: 4
Tipo

PeerReviewed