Automatización: Proceso Completo

A lo largo de diferentes artículos hemos ido viendo el conjunto de elementos que forman la metodología, compilamos en éste todo el proceso.

Generación de código
A través del Language Workbench, una vez definidos los lenguajes (DSLs), realizamos el proceso de programación. Y a medida que vayamos avanzando iremos generando código para compilarlo y ver el resultado en el aplicativo final.

Siempre que utilicemos lenguajes que soportan clases parciales, clases abstractas, tipos genéricos, delegados, etc., podemos generar el código sin peligro ya que lo haremos en ficheros separados, sin riesgo de pisar código manual o de FWs. En caso contrario deberemos utilizar otro tipo de estrategias para evitar que esto ocurra.

Fusión con Frameworks
Como en el caso anterior, dependiendo de los lenguajes finales que utilicemos, la fusión será más o menos simple. En el caso de lenguajes que soporten FWs (clases abstractas, parciales, etc) no se requiere tal fusión porque lo soluciona la propia sintaxis del lenguaje.

En otro tipo de lenguajes habrá que ajustar alguna funcionalidad o algún fichero de configuración, lo cual podrá ser también automatizado por el propio LW.

Extensiones manuales
En la mayoría de los casos existirán ciertas funcionalidades que no conviene automatizar, de lo contrario complicaríamos nuestros DSLs perdiendo, por tanto, parte de su potencia.

Lo ideal sería definir, en la propia herramienta, esos lenguajes de extensión teniendo integrado todo el desarrollo en la herramienta. En caso contrario podremos programar estas extensiones en el propio lenguaje final en el que generamos el código.

Si añadimos las extensiones en el lenguaje final, nuevamente será interesante buscar un enfoque de FWs, esto es, hacer que el propio código generado tenga una estructura extensible y así podamos tener las partes manuales en ficheros diferentes, evitando el riesgo de pérdida o substitución.

WebFW

Componentes del servidor web

Building

Una vez que tenemos todo el código: FWs, generado, extensiones manuales, ficheros de configuración y otros, un proceso automático se encargará de su fusión, si fuera necesario, de su compilación y de su publicación.

Dependiendo del sistema operativo tendremos diferentes herramientas para hacerlo, aunque lo más común en todos ellos es usar ficheros de instrucciones batch que realiza todos los pasos del proceso.

 
Para concluir indicar que hemos detallado el proceso tal y como se encuentra en este momento, pero cabe resaltar que es una tecnología en constante evolución y que persigue integrar todo el proceso en el propio LW: lenguajes, debug, fusión, building, etc.
 
 

Ver todos los posts Teórico.
 
Anuncios

Acerca de bheudek

Doing Business Programming

Publicado el julio 16, 2014 en Bheudek, Teórico y etiquetado en , . Guarda el enlace permanente. 1 comentario.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: