Cargando Eventos

Título: Diseño e implementación de un generador de código .NET
Directores: Edgardo Zoppi y Diego Garbervetsky
Jurados: Hernán Wilkinson y Alexis Soifer

Resumen:

En esta tesis presentamos el diseño e implementación de un módulo de generación de código para el framework de análisis estático de código Analysis.NET. Esta herramienta permite leer ejecutables de .NET y realizar distintos análisis sobre ellos. Si bien la misma existe hace tiempo ya, actualmente tiene la limitante de no poder generar código ejecutable. El módulo agregado busca cubrir esa brecha y lograr una herramienta más completa, como las que podemos encontrar para otras tecnologías similares.
Adicionalmente incluimos otro módulo que permite realizar una conversión entre dos representaciones intermedias que brinda el framework. Esto, sumado a la nueva funcionalidad de generación de código, nos permite hacer uso de distintos análisis y transformaciones que provee la herramienta pudiendo impactar cambios en un nuevo ejecutable.
En este trabajo presentamos la plataforma .NET, junto con su arquitectura, y el framework Analysis.NET. Detallamos el diseño e implementación de los módulos agregados explicando la problemática que resuelven y las dificultades encontradas durante su implementación.
Nos concentramos en cuatro ejes de estudio que nos ayudarán a entender el valor de la funcionalidad agregada. Estos son Generación, Instrumentación, Optimización y Generación programática, siendo el primero de ellos el foco principal de este trabajo.
Por último realizamos una evaluación empírica, experimentando la herramienta completa con distintos casos de pruebas para los cuales evaluamos los resultados obtenidos para cada eje.