Charlas sobre Generación de Código

Published on Author lopezLeave a comment

Los que asistieron a alguna de mis charlas, saben que llega el momento en el que presento, tanto tenga relación con el tema tratado como que no, a mi proyecto preferido, mi generador de código a partir de un modelo, AjGenesis.

Desde hace unos años lo vengo mejorando y probando, y me ha dado muchas satisfacciones. Lo uso en cada nuevo proyecto que encaro, así que estoy cumpliendo con la máxima "comerse la comida del perro" (que podría entenderse, aplicado a programación, a que el desarrollador debe usar sus propios productos). Tanto el año pasado (2005) como en éste, he tenido la oportunidad de dar charlas solamente dedicadas al tema de generación de código con ese proyecto. Y ahora, vienen dos charlas, con las que estoy entusiasmado.

Una, el viernes que viene, en Buenos Aires, organizada por el Club de Programadores (con costo), más información en:

http://www.clubdeprogramadores.com/cursos/CursoMuestra.php?Id=287

Otra, el .. de noviembre, en la ciudad de Santa Fe, aquí en mi pais Argentina. Tendré el gusto de volver a esa ciudad, donde hay un polo informático importante, promovido desde la actividad académica y apoyado por el gobierno. Organizado por el Microsoft User Group y la Universidad Tecnológica Nacional; es gratuito, tienen información en:

http://www.mug.org.ar/Eventos/2369.aspx

Espero poder transmitir a los asistentes a esta charla, la idea que subyace a trabajar con generación de código, tanto con AjGenesis como con el utilitario que elijan, y en especial, destacar la importancia del modelo. A diferencia del concepto de "software factories" (aunque tiene sus puntos en común), con AjGenesis se puede encarar la generación de artefactos de texto (no solamente código), desde un modelo, o de varios modelos. Por ejemplo, para entender la necesidad de más de un modelo, en los ejemplos a presentar habrá un modelo independiente de la plataforma (cómo es el sistema, las entidades y relaciones que maneja), y otro, dependiente de la plataforma (base de datos a usar, lenguaje, presentación web), que pueden combinarse. Así, desde un modelo independiente de la plataforma, se puede generar la misma solución para PHP, para VB.NET, o para VB.NET con NHibernate. Se pueden generar código de capas, que cumpla con los patrones de Business Entities, Business Components, o que siga los lineamientos de Evans, con Entities, Repositories, Services, y una capa de Application y otra de Infrastructure.

O lo que venga mañana. El modelo independiente sigue estando, es cuestión de adaptar las plantillas y procesos de generación, para que produzca lo que necesitamos, en la tecnología que precisemos.

Angel "Java" Lopez
http://www.ajlopez.com/

Leave a Reply

Your email address will not be published. Required fields are marked *