3.283 cursos gratis
6.263.164 alumnos
Publica tu curso gratis
Busca cursos gratis:
Estás aquí: mailxmail > Cursos de Informática > Programación > Generadores de código > Ideas sobre Inteligencia Artificial y Codigo Generado

Generadores de código

Autor: Victor Viera
Curso:  4,67/5 4,67/5 (3 opiniones) |2263 alumnos|Fecha publicación: 24/01/2006

Capítulo 7:

 Ideas sobre Inteligencia Artificial y Codigo Generado

IA Y LA GENERACIÓN DE CÓDIGO

Unas de las definiciones sobreinteligencia artificial son las siguientes:

-    Unos dicen que es hacer que las computadoras piensen (Haugeland 1985)
Automatización de actividades que se vinculan con procesos de pensamiento humano (Bellman 1978)
-    Automatización de la conducta inteligente (Luger  Stubblefield 1993)

El objetivo que persigue este capítulo es brindar algunas ideas, desde el punto de vista del autor, sobre la combinación de la Inteligencia Artificial y la generación de código.

El factor crítico a la hora de la construcción de un generador de código es la tarea bastante difícil de la automatización de la codificación de las reglas del negocio. Los planteamientos hasta el momento sobre generación de código del presente libro, tratan sobre la generación de código para aquellas capas de una arquitectura que no pertenecen a la codificación de las reglas del negocio. Como ejemplo de estas capas tenemos:

La capa de acceso a datos Los procedimientos de inserción, modificación y actualización. La generación de las clases con sus atributos y la declaración de los métodos. Los métodos solamente se declaran. Algunos tipos de procedimientos almacenados de consulta. Inclusive se ha planteado la generación de la capa de presentación, con unos estándares previamente definidos. Scripts de Creación de la base de datos y sus objetos.

La capa donde se codifican las reglas del negocio, esta capa es llamada habitualmente BL (Business Logic), es la capa donde se concentra la mayor complejidad de la codificación de software; y que decir cuando las reglas del negocio afectan el comportamiento de los eventos en formularios y ventanas.

                          Ideas sobre Inteligencia Artificial y Codigo Generado

Figura 7.1. Arquitectura de una aplicación basada en el enfoque de capas. 

Para un ejemplo de reglas del negocio  se puede pensar en un programa para nómina con que ,entre otras, tiene estas dos Características:
-  Cuando los trabajadores pertenecen a arreas administrativas el pago se realiza quincenalmente. A los trabajadores de contratos por prestación de servicios el pago se realiza mensualmente.
-  Para algunos trabajadores que tienen prestamos se les hace un descuento de una cuota mensual, quincenal o semanal; dependiendo del área y tipo de contrato del trabajador.
-  A los trabajadores con contrato de prestación de servicios no se les debe cobrar los aportes de salud y pensión.

Pero el interrogante a resolver es: ¿ se puede construir un generador de código "inteligente" capaz de ayudar en la generación de código para la capa dereglas del negoció?

El primer concepto que se abordará será el de los Agentes. Específicamente programas agentes. El agente en su estructura más simple seria:

Aquel que acepta percepciones desde un ambiente y genera acciones respectivas. Para nuestro enfoque seria: La aceptación de las reglas del negocia y la generación del código para el lenguaje respectivo.

             Ideas sobre Inteligencia Artificial y Codigo Generado 
               Figura 7.2. Posible agente generador de código

Este hipotetico agente generador de código consta de un almacenador de Reglas del negocio, donde las percibe y almacena. Un estado del mundo o sintaxis del lenguajes de programación actualizada por versiones. Las reglas de codificación, acción representada en código a generar y el motor generador de código.

SISTEMAS EXPERTOS

En lo que se refiere a la teoria de los sistemas expertos, estos concuerdan con la idea de software para hacer software.

Los sistemas expertos encapsulan el conocimiento de una persona en un campo especifico. Con este conocimiento los sistemas expertos pueden solucionar problemas, tomar decisiones y hasta perfeccionar su comportamiento e incrementar su conocimiento.

En un acercamiento a un hipotetico sistema experto generador de código, que encapsule las habilidades de un programador con experiencia y pueda crear software.

El cuestionamiento aquí es el siguiente: ¿se puede desarrollar un sistema experto que cumpla con la teoria de: "Programas con un nivel habilidades profesionales,similares a las de una persona experta en un area especifica" ?

Se puede pensar en la construcción de un sistemas experto que contenga el conocimiento y la experiencia de un habilidoso programador. Por supuesto actualmente esto puede sonar un poco lejano, pero es necesario el contemplamiento de otros enfoques en el campo de la ingeniería del software.

Las ideas presentes en este capitulo tratan de incentivar a los desarrolladores, estudiantes,  profesionales a plantear nuevas alternativas para los proceso de actuales de construcción de software. 

Capítulo siguiente - Arquitecturas
Capítulo anterior - Cadenas de Carácteres
Recibe nuestras novedades
Al presionar "Recibir" estás dándote de alta y aceptas las condiciones legales de mailxmail

Hay 3 opiniones. Opina sobre este curso.


Cursos similares a Generadores de código


Cursos Valoración Alumnos Vídeo
Sistemas Informativos. Diseño y creación (1/2)
Diseño de sistemas informativos. El proceso de creación de los sistemas informativos es el centro de esta primera parte del curso. Desarrollamos u... [08/04/09]
3/5 2.909  
C# Curso de Programación
Curso Básico de programación en C#, este curso básico abarcará desde las bases del lenguaje hasta nuestros primeros pasos con aplicaciones web, acceso a bases de datos de... [14/07/05]
 3,50/5 8.500  
Manual de estilo de páginas Web
En este curso se quiere dar una guía muy amplia para todos aquellos que están interesados en crear una página Web. Dando explicaciones de como crear un buen diseño tanto ... [05/05/05]
5/5 14.422  


Publicar en   del.icio.us    digg    meneame

¿Qué es mailxmail.com?|ISSN: 1699-4914|Recomiéndanos|Ayuda
Condiciones legales de mailxmail