2 resultados para roslyn,compilatore,C

em AMS Tesi di Laurea - Alm@DL - Università di Bologna


Relevância:

100.00% 100.00%

Publicador:

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.

Relevância:

40.00% 40.00%

Publicador:

Resumo:

.NET Compiler Platform è un compilatore per i linguaggi C# e Visual Basic realizzato da Microsoft. L’innovazione apportata da tale strumento è l’introduzione di API che permettono di accedere al compilatore; in particolare, è possibile accedere alle strutture dati utilizzate al suo interno, quali simboli o AST, e controllare e/o modificare il processo di compilazione. Una parte di questo progetto, chiamato anche progetto Roslyn, è focalizzata sull’introduzione dello scripting per il linguaggio C#. In questa trattazione si è interessati a sperimentare le possibilità offerte da tale strumento nel campo dell’esecuzione dinamica di frammenti di codice. Gli obiettivi imposti si collocano nell’ambito della re-ingegnerizzazione e dello sviluppo di software. Tali obiettivi sono la re-implementazione dei filtri di selezione contenuti nel framework Phoenix, utilizzando le API di Roslyn per migliorarne le prestazioni, e la progettazione di un componente che realizzi una console per lo scripting C# dotata della possibilità di riferire dinamicamente librerie. Le API di compilazione si rivelano essere non propriamente adatte all’esecuzione immediata di frammenti di codice, nonostante ciò, è possibile, appoggiandosi alla reflection, utilizzarle per giungere a questo risultato. Lo scripting, invece, si rivela uno strumento dalle grandi potenzialità nel suddetto ambito.