RT Generic T1 Ingeniería dirigida a modelos, sistemas de transformación modelo a texto, complemento de refactorización de código C++ a C++11 para eclipse A1 Tovar Moreno, Alejandro AB En este Trabajo de Fin de Grado presentaremos los sistemas dirigidos por modelos (MDE) y las arquitecturas dirigidas por modelos (MDA). Trataremos de aplicar un sistema de transformación de modelo a texto dentro de una arquitectura MDA como una nueva alternativa a la generación de analizadores y conversores entre lenguajes de programación. El objetivo será conseguir un refactorizador de código que permita modelar una clase C++ y aplicar transformaciones para obtener código C++11.Para ello, tras analizar y utilizar diferentes mecanismos y sistemas que podrían realizar estas transformaciones, nos decidiremos por utilizar un sistema basado en plantillas de transformación y el lenguaje de programación JAVA.La situación ideal, consistiría en conseguir una arquitectura que nos permita realizar las tres actividades principales en estos sistemas de transformación modelo a texto de forma independiente, para que de esta manera, cualquier cambio que pretenda realizarse afecte a la menor parte de la arquitectura posible y sea fácil de modificar.En nuestro caso en particular, presentaremos una arquitectura basada en esta separación de funcionalidades para conseguir de esta manera realizar algunas transformaciones entre dos lenguajes de programación C++03 y C++11.Por un lado, procederemos a la lectura y modelado de ficheros C++ recurriendo a complementos de eclipse que nos permitan realizar esta función.Una vez, consigamos extraer el modelo y seleccionemos las transformaciones que pretendemos realizar desde el lenguaje inicial C++03 a nuestro lenguaje final C++11, utilizaremos el complemento de eclipse XTEND2 que nos permitirá realizar conversiones utilizando un lenguaje de programación muy sencillo y similar a JAVA.Para terminar, cuando todo el contenido del fichero C++ se halla analizado y se hayan realizado las transformaciones de lenguaje oportunas, la parte de la aplicación encargada de la generación de ficheros, se encargará de crear un nuevo fichero C++ con el contenido transformado a C++11.En resumen, lo que se propone con este Trabajo de Fin de Grado es presentar una arquitectura que nos permita realizar transformaciones entre los distintos lenguajes de programación que conviven hoy en día; y como muestra de un caso aplicado basado en una arquitectura MDA, un sistema de refactorización y rejuvenecimiento de código C++03 a C++11. YR 2013 FD 2013-06-25 LK http://hdl.handle.net/10016/19209 UL http://hdl.handle.net/10016/19209 LA spa DS e-Archivo RD 27 abr. 2024