Generadores de codigo : agilizando el desarrollo
por:
Uno de los temas que más de moda está en los últimos años, son los generadores de código de manera automática, que toman como entrada una descripción del diseño que se quiere construir y ellos realizan una implementación en el lenguaje que nosotros le indiquemos.
Introducción a los generadores de codigo
En un primer momento, los generadores de código nacen como una manera de agilizar el desarrollo, por ejemplo si siempre partimos de un caso en el que usamos 5 librerías y nuestro diseño es de cierta manera, para nosotros sería muy útil, poder disponer de esa plantilla ya creada y luego completar el contenido. Este proceso es muy importante si queremos diseñar un prototipo rápido, de lo que va a ser nuestro servicio y con el cual le podemos enseñar a un posible cliente, inversor o al propio equipo, cómo será lo que queremos montar.
Ese tipo de sistemas hasta hace poco los teníamos disponibles y nos añadían muchas facilidades, pero actualmente y utilizando una expresión muy típica de informática, hemos intentado “rizar el rizo” para conseguir que no sea una mera plantilla lo que vamos a utilizar, sino que nos pueda generar una versión sencilla, pero completa o casi completa de todo el sistema.
Tipos de generadores de codigo
Dentro de los generadores de código, desde mi punto de vista podemos distinguir dos tipos principales:
- Generadores interactivos: este tipo de generadores son muy comunes actualmente y permiten, que con un simple sistema de arrastrar y configurar un par de parámetros del elemento, poder generar todo el código necesario para implementar esa funcionalidad. Un ejemplo de ello es el App Studio, el generador de Aplicaciones para Windows Phone que Microsoft pone a disposición de cualquier persona.
- Generadores usando un lenguaje de modelado: este tipo de generadores son menos comunes pero son los más “potentes”, ya que usando una descripción del modelo que queremos crear en un lenguaje de modelado como UML, son capaces de crear un porcentaje bastante amplio del código. Un ejemplo de esto es Visual Paradigm, y una de sus ventajas es que permite generar código en diversos lenguajes como C++, Java y PHP.