|
| |
Generación de código en la programación web avanzada
Resumen: La generación de código en el mundo se ha hecho algo imprescindible, pues el ahorro de tiempo, la eficiencia en la programación y la estandarización de código son los pilares fundamentales para la construcción de un proyecto.
Publicación enviada por Leevan Abon Cepeda
RESUMEN
La generación de código en el mundo se ha hecho algo imprescindible, pues el
ahorro de tiempo, la eficiencia en la programación y la estandarización de
código son los pilares fundamentales para la construcción de un proyecto. La
automatización de la programación trae consigo un cambio radical en la
construcción de softwares, pues el programador solo tendría que concentrarse en
la Lógica del Negocio que desea implementar, debido a que el resto de las tareas
pueden ser generadas, perdiéndose mucho tiempo creando plantillas y programando
la Capa de Acceso a Datos, cosa que puede ser erradica generando todo este
código con solo especificarle algún que otro parámetro, sin importar el
lenguaje.
Sin lugar a dudas el resultado más relevante consiste en el ahorro del tiempo y
alcance de un estadío superior en la calidad de software. Además de ser una
herramienta hecha para los propios programadores, ayudando a facilitar su
trabajo, el cual suele ser en ocasiones engorroso y difícil, constituyendo un
paso de avance en el mejoramiento de las condiciones de trabajo.
Palabras claves: Generación de Código, programación, ahorro de tiempo,
automatización.
INTRODUCCIÓN
En la construcción de aplicaciones Web con modelos de 3 capas(Interfaz de
Usuario, Lógica de Negocio y Acceso a Datos) aparecen una serie de patrones
comunes en cualquiera de las capas existentes así como a la hora de la
programación Orientada a Objeto, por lo que muchas veces los programadores
tienen que repetir el mismo segmento de código varias veces cuando desarrollan
una aplicación siendo esto una situación problémica en la construcción de
cualquier software perdiéndose tiempo innecesariamente en su construcción y a
pesar de que el código es el mismo, se cometan errores. Todo esto trae consigo
una falta de eficiencia muy grande a la hora de programar.
En términos más generales, la generación de código es usada para construir
programas de una manera automática evitando que los programadores tengan que
escribir el código a mano. Constituyendo un ahorro de tiempo en el desarrollo de
proyectos y aplicaciones.
DESARROLLO
La generación de código ha devenido en una necesidad casi obligatoria para la
mayoría de los programadores durante el desarrollo de software. Numerosas
herramientas conocidas como CASE permiten la generación automática de código a
partir de diagramas o modelos.
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 comercial u orientado 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,
gracias al avance de la ingeniería del software, se ha llevado a un nivel
diferente; donde se encuentran programas generadores de pantallas, reportes y
consultas, estas son herramientas de gran utilidad; pero se debe, en la mayoría
de los casos, pagar una gran cantidad de dinero por ellos. [1]
Todavía el mundo se encuentra avanzando y dando pasos firmes en el tema de
generación de código, pues no se puede hablar de una herramienta eficaz que
cumpla con todos los requerimientos necesarios en la actualidad, pero tampoco
existe una solida preparación en cuanto al tema, pues todo programador se
enfrasca en el código que debe confeccionar y no en la búsqueda de una
herramienta que le puede ayudar a generar parte de ese código.
TIPOS DE GENERACIÓN DE CÓDIGO
Templating. Se genera un armazón (o esbozo) de código fuente no funcional
para ser editado, con el que se evita tener que escribir la parte más repetitiva
del código (generalmente poco compleja). Suele ser una opción recomendable.
Parcial. Se genera código fuente que implementa parcialmente la funcionalidad
requerida, pero que el programador usará como base para modificar, integrar y/o
adaptar a sus necesidades. No suele ser recomendable. Por ejemplo: generamos una
aplicación para el mantenimiento de tablas de una Base de datos.
Total. Se genera código fuente funcionalmente completo pero que no va a ser
modificado por el programador, sino que si es necesario se vuelve a regenerar.
Por lo general tampoco suele ser un código excesivamente complejo. Recomendable.
CREACIÓN DE GENERADORES DE CÓDIGO
Para la creación de generadores de código se deben considerar los siguientes
aspectos:
- La arquitectura de software para la cual se va ha desarrollar el generador.
- Las características especificas del lenguaje de programación.
- El lenguaje con el que se desarrollará el propio generador.
- Responder las interrogantes: ¿La generación de código se realizará a partir de
modelos como Uml? ¿La generación de código se hará a partir de las tablas de una
base de datos?, ¿Se realizará un generador de código que su resultado sea
fragmentos de código que son de uso más frecuente en el software? ¿Se creará un
generador genérico que "genere" código para diferentes lenguajes?
- Las reglas de utilización del generador, en otras palabras, la forma adecuada
para que los usuarios del generador obtengan el mayor provecho.
En síntesis para crear un generador de código se deben hacer muchas de las
tareas que realizan los compiladores; algunas de estas tareas son: la búsqueda
de patrones, la escritura de código, el análisis sintáctico, el análisis léxico
y la optimización de código. Estas tareas las realiza el desarrollador una vez,
para una arquitectura específica.
Desventajas de los generadores existentes:
En el mundo existen una serie de Generadores de códigos innumerables, pero a
pesar de sus facilidades, también tienen sus desventajas, como:
- Generan código solo referente a los métodos básicos en las conexiones a la
Base de datos, es decir, insertar, modificar, eliminar y en casos muy
específicos consultas.
- No están orientados a una arquitectura, y para especificarle una se debe
realizar todos los modelos correspondientes a la misma, siendo esto un trabajo
muy engorroso y difícil de modelar.
- A veces deben ser demasiado detallados los diagramas para generar un simple
código y otras veces no es posible a través de diagramas especificar lo que se
quiere hacer.
- La mayoría de los generadores de código son aplicaciones de escritorio.
CONCLUSIONES
Valorados los impactos causados por los generadores de código, se puede
afirmar que su uso es de gran ayuda en la confección de softwares, mejorándose
grandemente la calidad de la producción, el establecimiento de estándares de
código y el tiempo de desarrollo de las aplicaciones.
Además, con un buen uso una arquitectura en componentes se puede llegar a
obtener un máximo rendimiento del generador de código que se utilice, así como
una buena practica de lo métodos de construcción de software utilizando capas o
componentes.
REFERENCIAS BIBLIOGRÁFICAS
- COMPILADORES Y GENERADORES DE CÓDIGO. http://www.mailxmail.com/curso/informatica/generadores/capitulo2.htm
.
- CODECHARGE STUDIO. http://www.yessoftware.com/products/product_detail.php?product_id=1.
- MAKE ME FEEL GOOD. http://www.abcdatos.com/webmasters/programa/z4687.html .
- Clarion. http://www.gopac.com.mx/herramientas/clarion/descripcion.htm.
- Pressman, R. Software Engineering. A Practitioner’s Approach. Fourth Edition.
McGraw – Hill. USA, 1999.
AUTOR
Leevan Abon Cepeda.
E-mail: labon@uci.cu
Titulo: Ingeniero en Ciencias Informáticas.
Compartir 
Publicación enviada por Leevan Abon Cepeda
Contactar mailto:labon@uci.cu
Código ISPN de la Publicación EkpuyyZFluDoMiXQRG
Publicado Tuesday 4 de March de 2008
Ultimas Publicaciones en ilustrados.com
ilustrados.com nace con el fin difundir el conocimiento publicando trabajos de investigación, monografias, tesis, presentaciones powerpoint y afines. Publicar trabajos en ilustrados.com ha alcanzado prestigio y reconocimiento internacional siendo cada vez más el número de académicos, empresas, investigadores, científicos que consultan las publicaciones de nuestro portal.
|