Geovin Morales

Generadores de Código

Visión General

La generación de código data desde la existencia de los primeros compiladores. Hasta la aparición de los primeros generadores de código comerciales u orientados a "usuarios finales"; la generación de código era exclusividad de programas compiladores especializados.

En tiempos más recientes la generación de código se ha llevado a un nivel diferente; donde se encuentran programas generadores de pantallas, reportes y consultas, estas son herramientas de gran utilidad, entre estos destacan las herramientas CASE, generadores de código DML para SQL;

 

Objetivos de los Generadores

  • Mejorar la productividad en el desarrollo y mantenimiento del software.
  • Aumentar la calidad del software.
  • Mejorar el tiempo y coste de desarrollo y mantenimiento de los sistemas informáticos.
  • Mejorar la planificación de un proyecto
  • Automatizar, desarrollo del software, documentación, generación de código, pruebas de errores y gestión del proyecto.
  • Ayuda a la reutilización del software, portabilidad y estandarización de la documentación
  • Gestión global en todas las fases de desarrollo de software con una misma herramienta.
  • Facilitar el uso de las distintas metodologías propias de la ingeniería del software.
  • Aumentar la biblioteca de conocimiento informático de una empresa ayudando a la búsqueda de soluciones para los requisitos.

 

Clasificación de los Generadores

Aunque no es fácil y no existe una forma única de clasificarlos, se pueden clasificar en base a los parámetros siguientes:

  • Las plataformas que soportan.
  • Las fases del ciclo de vida del desarrollo de sistemas que cubren.
  • La arquitectura de las aplicaciones que producen.
  • Su funcionalidad.

Un generador típico estará compuesto por reglas de navegación y reglas de producción a saber:

Las reglas de navegación se activan ante la presencia de un determinado tipo de elemento en la entrada, y procede a "navegar" las relaciones de dicho elemento, cambiando el elemento actual del modelo de entrada.
Las reglas de producción, al activarse ante un elemento en la entrada ( y tal vez también cierto tipo de elemento a la salida), aplican un algoritmo escrito por el desarrollador para generar nodos a la salida utilizando la información actual que se encuentra en la entrada y la memoria activa.

 

XML Como Herramienta Para Generar Código

XML es un lenguaje de Marcado y datos carácter entremezclados. El marcado son señales especificas que tienen un propósito definido, estas señales se añaden al texto para facilitar su procesamiento. Por ejemplo la palabra "marcado" se encuentra encerrada en una marca particular de XML.

<ejemplo>Marcado</ejemplo>
Diagrama XML
Todo documento XML contiene un elemento raíz, de este elemento raíz dependen los elementos contenidos. Un documento  XML tiene una estructura en forma de árbol.

Diagrama XML 2
El estandar  XML brinda algunas ventajas que se ven a continuación:

  • Independencia de los datos y de las aplicaciones.
  • Información sobre información.
  • Paso de información entre aplicaciones.

Al tener los datos almacenados en un formato standard como XML, estos se pueden compartir entre aplicaciones independiente mente del lenguaje en que este construida cada aplicación. Cada aplicación lee el archivo XML y se comporta o realiza los procesos dependiendo del contenido del archivo.

Diagrama 3

Las "marcas" dentro de un documento XML pueden darle sentido a los datos, esto facilita su procesamiento, en otras palabras, se esta haciendo el procesamiento de un documento y se encuentra con una marca que dice : "<Titulo>EJemplo</Titulo>", será mucho mas fácil su tratamiento. Por el contrario no tener esta marca implicaría hacer un procedimiento bastante complicado para identificar el titulo en un montón de caracteres.

¿CÓMO PUEDE APOYAR XML LA GENERACIÓN DE CÓDIGO?

Según la visión del autor XML puede utilizarse en la generación de código en la siguiente forma:

Si se desea generar una aplicación para una tabla básica por ejemplo, "estado" , que contenga los atributos Código y nombre. Entonces Para esta aplicación se puede crear el archivo XML con la  Información que se muestra en la siguiente  figura

Diagrama XML 4

Se puede observar que el archivo XML tiene un elemento Raíz llamado "<tablas>" y su respectivo cierre "</tablas>". Dentro de el elemento raíz se encuentra el elemento "<tabla1>" , esto indica que el elemento "tablas" esta compuesto por varias tablas, seguidamente se encuentra el nombre de la tabla, identificada por el elemento "<nombre>Estado </nombre>". En el mismo nivel del elemento nombre se encuentra el elemento con etiqueta de inicio "<Campos>", que indica que esta compuesto por dos campos (campo1,campo2).

Se debe contemplar la posibilidad de que se desee tener un archivo con los procesos que se pueden realizar sobre la tabla; estos procesos son: crear, modificar y borrar

Diagrama XML 5

La utilización de archivos xml permite gran cantidad de utilidades para la generación de código. Estos archivos sirven de apoyo para estandarizar el generador a construir. La figura siguiente muestra un ejemplo de archivo de configuración de pantallas de un generador. También se podría tener una archivo de configuración de reportes. 

Diagrama XML 6

PROCESO DE LECTURA DE UN ARCHIVO XML.

Además de la ventaja que tienen los archivos xml, se han creado librerías de lectura y escritura de archivos xml. No hay que hacer el programa de lectura del archivo xml, sólo utilizar la librería especifica para el lenguaje utilizado.

Creado en La Antigua Guatemala, Autor Geovin Morales, ©2007-2010 ®SIEMS.