100%(2)100% menganggap dokumen ini bermanfaat (2 suara)
405 tayangan12 halaman
Los lenguajes de cuarta generación (L4G) permiten especificar características de software a un alto nivel de abstracción y luego generan automáticamente el código fuente. Los L4G están más cerca del lenguaje natural y representan estructuras de datos y control a un nivel más abstracto que los lenguajes anteriores. Algunos ejemplos de L4G son lenguajes de petición para bases de datos y generadores de programas que permiten crear aplicaciones con menos líneas de código.
Los lenguajes de cuarta generación (L4G) permiten especificar características de software a un alto nivel de abstracción y luego generan automáticamente el código fuente. Los L4G están más cerca del lenguaje natural y representan estructuras de datos y control a un nivel más abstracto que los lenguajes anteriores. Algunos ejemplos de L4G son lenguajes de petición para bases de datos y generadores de programas que permiten crear aplicaciones con menos líneas de código.
Los lenguajes de cuarta generación (L4G) permiten especificar características de software a un alto nivel de abstracción y luego generan automáticamente el código fuente. Los L4G están más cerca del lenguaje natural y representan estructuras de datos y control a un nivel más abstracto que los lenguajes anteriores. Algunos ejemplos de L4G son lenguajes de petición para bases de datos y generadores de programas que permiten crear aplicaciones con menos líneas de código.
El trmino tcnicas de cuarta generacin (T4G) abarca un amplio espectro de
herramientas de software que tienen algo en comn: todas facilitan al ingeniero de software la especificacin de algunas caractersticas de software a alto ni!el" #uego$ la herramienta genera autom%ticamente el cdigo fuente bas%ndose en la especificacin del tcnico" &ada !e' parece m%s e!idente que cuento ma(or sea el ni!el en el que se especifica el software m%s r%pido se podr% construir el programa" #as tcnicas de cuarta generacin se orientan a especificar el software usando formas de lengua)e especiali'ado o notaciones graficas que describen el problema que ha( que resol!er en trminos que entienda el cliente" *ctualmente un entorno para el desarrollo de software con T4G puede incluir herramientas como: #engua)es no procedimentales de consulta a base de datos Generacin de informes +ane)o de datos Generacin de cdigos &apacidades de ho)as de c%lculo #as tcnicas de cuarta generacin comien'a con: la reunin de requisitos$ los cuales los proporciona el cliente ( deben ser anali'ados por el desarrollador" En aplicaciones peque,as podemos pasar directamente del la recoleccin de requisitos a la implementacin pudiendo utili'ar un lengua)e de cuarta generacin no procedimental (#4G)" #a implementacin mediante un #engua)e de cuarta generacin permite al desarrollador centrarse en la presentacin de los resultados deseados$ que se traduce autom%ticamente en un cdigo fuente" -ara transformar la implementacin T4G en un producto del desarrollador debe reali'ar una prueba completa$ documentarla ( e)ecutar acti!idades de integracin ( mantenimiento de forma e.pedita" Tiene !enta)as: /educcin dr%stica de tiempo de desarrollo +e)or producti!idad de la gente que lo constru(e 0ncon!enientes: #as herramientas actuales de T4G no son m%s f%ciles de utili'ar que los lengua)es de programacin" El cdigo producido por estas herramientas es ineficiente El mantenimiento de grandes sistemas de software desarrollados con esta tecnologa es cuestionable" ENFOQUES de T4G: 1. El uso es un enfoque !iable para muchas de las diferentes %reas de aplicacin$ ofrece una solucin fiable a muchos problemas de software" 1" El tiempo requerido para producir software se reduce mucho" 2" El uso para grandes traba)os de software e.ige el mismo o m%s tiempo de an%lisis$ dise,o ( prueba$ para lograra un ahorro sustancial de tiempo que puede ahorrarse mediante la eliminacin de la codificacin" El paradigma T4G se puede con!ertir en el enfoque dominante hacia el desarrollo del software" HERRAMIENTAS T4G Progress 4GL , o -rogress 3pen Edge$ es un lengua)e mu( utili'ado pues es portable ( mu( confiable" Es una plataforma dise,ada para a(udar a los desarrolladores en la construccin de aplicaciones empresariales de forma r%pida$ esto a(uda a recuperar la in!ersin de manera m%s r%pida" Tiene la facilidad de f%cilmente conectarse e integrarse con clientes$ con otras aplicaciones ( con distintas bases de datos" SQL (Structured Query Language): 45# (lengua)e de consultas estructurado) es un lengua)e de acceso a bases de datos relacionales con el cual se pueden crear ( manipular las mismas" WinDev: -ermite el desarrollo de interfa' gr%fica" 4e pueden reali'ar muchos tipos de aplicaciones$ entre ellas: Gestin$ industriales$ mdicas" En 6in7e! la calidad de las aplicaciones dependen menos del equipo de desarrollo que con otras herramientas$ esto debido a que trae un con)unto de funciones a!an'adas sin la necesidad de que alguien las programe$ por e)emplo$ puede ser que el entorno detecte que me)oras para aumentar el rendimiento ( la !elocidad del sistema ( este mismo las sugiere ( las reali'a autom%ticamente$ adem%s$ posee una herramienta generadora de reportes autom%tica" PowerBuilder: Es un entorno gr%fico de programacin orientado a ob)etos para el desarrollo de aplicaciones cliente8ser!idor$ distribuidas ( web" 0nclu(e herramientas para generar reportes$ acceder bases de datos ( para crear interfa' gr%fica" Mate!atica: En +athematica se contemplan muchos de los aspectos tcnicos de la computacin como el mane)o numrico$ la con!ersin de datos$ la !isuali'acin ( la creacin de interfaces para el usuario" APLICACIONES BASADAS EN T4G: 6i+a., u 9:1";<e$ propuesto nada menos que por 0ntel como un reempla'o para 6i=>i ( que promete lle!ar la tecnologa inal%mbrica a distancias de hasta ?: @ilmetros" El Aet. Generation +obile Aetwor@s (AG+A)$ un consorcio formado por Bodafone$ 3range$ 4print$ T=+obile 0nternational$ ATT 7o&o+o ( &hina +obile, asegura que podramos estar haciendo pleno uso del est%ndar 4G para el a,o 1:;1" CUADRO COMPARATIVO ENTRE TECNOLOGAS PARA DISPOSITIVOS MVILES +icrosoftC Dusiness 4olutions &/+ se integr f%cilmente con la infraestructura basada en +icrosoft de &learsight ( facilit al personal di!ersas tareas$ desde la captacin del cliente hasta el desarrollo de lealtad a la marca" Cu!" Ge#e!$%&#: * lo largo de la historia del desarrollo de software$ siempre hemos intentado generar programas de computadora con cada !e' ma(ores ni!eles de abstraccin" #os lengua)es de la primera generacin traba)aban a ni!el de instrucciones m%quina$ el menor ni!el de abstraccin posible" #os lengua)es de segunda ( tercer generacin han subido el ni!el de representacin de los programas de computadora$ pero an ha( que especificar distintos procedimientos algortmicos per fectamente detallados" 7urante la pasada dcada$ los lenguajes de cuarta generacin (#4G) han ele!ado an m%s el ni!el de abstraccin" #os lengua)es 4G# o lengua)es de cuarta generacin fueron pro(ectados para estar m%s cerca del lengua)e natural" #os lengua)es para acceder a las bases de datos son generalmente descriptos como 4G#" #os lengua)es de esta generacin$ al igual que los lengua)es de inteligencia artificial$ contienen una sinta.is distinta para la representacin del control ( para la representacin de las estructuras de datos" 4in embargo$ un #4G representa a estas estructuras en un ma(or ni!el de abstraccin$ eliminando la necesidad de especificar los detalles algortmicos" -or e)emplo$ la sentencia: &3+-ETE AET -/E4EAT B*#EE *A7 /ETE/A 3A 0ABE4T+EAT >3/ EF-EA70TE/E4 4? *A7 49 es tpica de un #4G" El sistema del #4G GsabeH cmo calcular los datos financieros deseados ( lo hace sin que el programador tenga que especificar los algoritmos adecuados" &laramente$ el GconocimientoH que se ha descrito anteriormente es especfico del dominio. 3 sea$ que ese mismo #4G ine!itablemente no entender%: &3+-ETE TIE /33T4 3> T/*A4&EA7EAT*# E5E*T03A & 2 *A7 *--#J TIE+ T3 -IJ40&*# +37E#" *unque otro 4G#$ dise,ado especficamente para el dominio de aplicacin necesario$ pudiera hacer correctamente el traba)o" #os lengua)es de cuarta generacin combinan caractersticas procedimentales ( no procedimentales" Es decir$ el lengua)e permite al usuario especificar condiciones con sus correspondientes acciones (componente procedimental)$ mientras que$ al mismo tiempo$ se pide al usuario que indique el resultado deseado (componente no procedimental)$ encontrando los detalles procedimentales mediante la aplicacin de su conocimiento del dominio especfico" #os lengua)es de cuarta generacin pueden ser di!ididos en las siguientes categoras: LENGUA'E DE PETICIN Iasta ahora$ la gran ma(ora de los 4G# se han desarrollado para ser usados con)untamente con aplicaciones de bases de datos" Tales lengua)es de peticin permiten al usuario manipular de forma sofisticada la informacin contenida en una base de datos pre!iamente creada" *lgunos lengua)es de peticin tienen una sinta.is comple)a que no es m%s sencilla (en algunos casos peor) que la de los lengua)es de tercera generacin" -or e)emplo: list b( region (9K"act"sep"sales) sum (9K"est"sep"sales) $ (sum (sum (9K"act"sep"sales) GENERADORES DE PROGRAMAS #os generadores de programas son otra clase de 4G#$ aunque algo m%s sofisticada" +%s que basarse en una base de datos pre!iamente definida$ un generador de programas permite al usuario crear programas en un lengua)e de tercera generacin usando notablemente menos sentencias" Estos lenguajes de programacin de muy alto nivel hacen un gran uso de la abstraccin de datos ( de procedimientos" 7esafortunadamente para los que traba)an en el campo de sistemas ( de productos de ingeniera$ la ma(ora de los generadores de programas se centran e.clusi!amente en aplicaciones de sistemas de informacin de negocios ( generan programas en &3D3#" 4in embargo$ la nue!a generacin de herramientas &*4E permiten al ingeniero de software modeli'ar gr%ficamente una aplicacin de ingeniera ( despus generar el cdigo fuente en & *da a partir del modelo gr%fico" OTROS L4G( *unque los lengua)es de peticin ( los generadores de programas son los #4G m%s comunes$ e.isten otras categoras" #os lenguajes de soporte a la toma de decisiones permiten que los no programadores lle!en a cabo una gran !ariedad de an%lisis qu pasa si, que !an desde los simples modelos de ho)as de c%lculo bidimensionales hasta los sofisticados sistemas de modelos estadsticos ( de in!estigacin operati!a" #os lenguajes de prototipos se han desarrollado para asistir en la creacin de prototipos facilitando la creacin de interfaces de usuario ( de di%logos$ adem%s de proporcionar medios para la modeli'acin de datos" #os lenguajes de especificacin formal se pueden considerar #4G cuando producen cdigo m%quina e)ecutable" -or ltimo$ las herramientas utili'adas en entornos de computadoras personales (p" e)": ho)as de c%lculo$ sistemas de bases de datos$ I(percard para el +acintosh) permiten al usuario GprogramarH a un ni!el m%s alto de abstraccin del que se dispona pre!iamente" QUINTA GENERACIN: El lengua)e de quinta generacin es programacin que utili'a una interface de desarrollo gr%fica para crear cdigo fuente que es usualmente compilado usando un compilador de 2era o 4ta generacin" +icrosoft$ Dorland$ 0D+$ ( otras compa,as hacen productos de programacin !isual para desarrollar aplicaciones por e)emplo en La!a" #a programacin !isual le permite a uno f%cilmente !isuali'ar las )erarquas de las clases orientadas a ob)etos ( arrastrar iconos para ensamblar componentes del programa" +icrobrew *pp6are e 0D+ Bisual*ge para La!a son e)emplos de ?G#" TECNOLOGIA DE PROCESOS #os tipos de -rocesos son adaptados para poderse utili'ar por el equipo del pro(ecto del software" -ara conseguirlo$ se desarrollan: o herramientas de tecnologa de procesos para a(udar a organi'aciones de software a anali'ar los procesos actuales$ organi'ar tareas de traba)o$ controlar ( super!isar el proceso ( gestionar la calidad tcnica" #as herramientas de tecnologa de procesos permiten que una organi'acin de software constru(a un modelo automati'ado del marco de traba)o comn de proceso$ con)unto de tareas ( acti!idades de proteccin" El modelo$ presentado como una red$ se puede anali'ar para determinar el flu)o tpico ( para e.aminar estructuras alternati!as de procesos que pudieran lle!ar a un tiempo un coste de desarrollo reducidos" &ada uno de los miembros de un equipo de pro(ecto de software pueden utili'ar tales herramientas para desarrollar una lista de control de tareas de traba)o a reali'arse$ productos de traba)o a producirse ( acti!idades de garanta de calidad a conducirse" #a herramienta de tecnologa de proceso tambin se puede utili'ar para coordinar el uso de otras herramientas de ingeniera del software asistida por computadora adecuadas para una tarea de traba)o en particular" HERRAMIENTAS DE TECNOLOGAS DE PROCESOS: Enterprise *rchitect una herramienta de modelado basada en E+# se ha con!ertido en una parte esencial para administrar esa comple)idad" El rol que Enterprise *rchitect )uega en la 0ngeniera de 4oftware *(uda a: *dministrar /equisitos +odelar ( anali'ar los procesos de negocios &onstruir dise,o ( modelos de comportamientos Generar e importar cdigo fuente en una !ariedad de lengua)es Generar e importar esquema de base de datos Generar e importar F47 &rear modelos de componentes ( de despliegue /astrear cambios *dministrar pruebas &onfirmar la tra'abilidad desde los requisitos a tra!s ( hasta el despliegue 7ocumentar su de)!!*ll* de )*+",!e &omunicar ( desarrollar pro(ectos de %#-e#%e!. de )*+",!e basados en el equipo +odelado8ingeniera r%pida de su de)!!*ll* de )*+",!e D"/%#d*, (NET 7ata6indow "AET es una herramienta patentada ( poderosa para acceso ( presentacin de datos que permite a los desarrolladores construir r%pidamente aplicaciones ricas en datos ( de clase empresarial$ con un solo ambiente" Ested puede f%cilmente incorporar acceso a datos$ lgica comple)a ( presentacin a todas sus aplicaciones "AET" PRODUCTO 0 PROCESO &ada die' o cinco a,os apro.imadamente$ la comunidad del software !uel!e a definir el problema cambiando el foco de los aspectos de producto a los aspectos de proceso" -or consiguiente se han abarcado lengua)es de programacin estructurados (producto) seguidos por mtodos de an%lisis estructurados (proceso)$ seguidos a su !e' por encapsulacin de datos (producto) ( despus por el nfasis actual en el +odelo +adure' de &apacidad ( 7esarrollo del 4oftware del 0nstituto de 0ngeniera del 4oftware" #as personas obtiene tanta satisfaccin (o m%s) del proceso creati!o que del producto final" En profesional creati!o del software debe de obtener tanta satisfaccin de la programacin como del producto final" #a dualidad de producto ( proceso es un elemento importante para mantener ocupada a la gente creati!a hasta que finalice la transicin de la programacin a la ingeniera del software" DUALIDAD DE PRODUCTO 0 PROCESO #as obser!aciones que se hacen sobre los mecanismos de software ( su desarrollo demuestran una dualidad fundamental entre producto ( proceso" Aunca se puede comprender el mecanismo completo$ su conte.to$ uso$ significado ( !alor si se obser!a solo como un proceso o solo como un producto" D'ANGO HERRAMIENTA DE CUARTA GENERACIN G7)ango es un framewor@ web de alto ni!el en -(thon que fomenta el desarrollo r%pido ( el dise,o limpio ( pragm%tico"H D'ANGO ES UN FRAME/OR1 /EB DE ALTO NIVEL En framewor@ web es un software que ali!ia el sufrimiento deri!ado de construir p%ginas web din%micas" *bstrae problemas comunes al desarrollo web ( proporciona ata)os para tareas de programacin frecuentes" En sitio web din%mico es uno en el que las p%ginas no son simplemente documentos IT+# colocados en algn lugar del sistema de ficheros de un ser!idor" En cambio$ en un sitio web din%mico$ cada p%gina la genera un programa de computador una famosa Maplicacin webM que usted$ el desarrollador web$ crea" -or e)emplo$ una aplicacin web podra obtener registros de una base de datos o reali'ar alguna accin bas%ndose en la entrada del usuario" >ramewor@ web 7)ango resuel!e los siguientes problemas: >acilita mostrar$ !alidar ( !ol!er a mostrar formularios IT+#" #os formularios IT+# son la principal manera de obtener datos de entrada de los usuarios web$ as que m%s le !ale a un framewor@ web facilitar la representacin de formularios ( el mane)o del cdigo tedioso para mostrar ( !ol!er a mostrar formularios (resaltando los errores)" &on!ierte la entrada que en!a el usuario en estructuras de datos que se pueden manipular cmodamente" -or e)emplo$ el framewor@ podra con!ertir los datos de un formulario IT+# en tipos de datos nati!os al lengua)e de programacin que se est utili'ando" *(uda a separar el contenido de la presentacin mediante un sistema de plantillas$ de manera que se pueda cambiar el aspecto de un sitio web sin afectar al contenido$ ( !ice!ersa" 4e integra cmodamente con las capas de almacenamiento como las bases de datos pero no e.ige estrictamente el uso de una base de datos" #e permite traba)ar m%s producti!amente$ a un ni!el de abstraccin ma(or que si estu!iera programando usando$ digamos$ ITT-" -ero no le prohbe ir un ni!el de abstraccin Mhacia aba)oM cuando sea necesario" 4e aparta de su camino$ e!itando llenarle la aplicacin de manchas sucias$ como E/#s que contengan M"asp.M o M"phpM" 7)ango hace todas estas cosas bienN ( presenta una serie de caractersticas que ele!an el listn de lo que debera ser un framewor@ web" El framewor@ est% escrito en -(thon$ un lengua)e de programacin bonito$ conciso$ potente ( de alto ni!el" -ara desarrollar un sitio utili'ando 7)ango ha( que escribir cdigo -(thon que utili'a las bibliotecas de 7)ango" DESARROLLO R2PIDO * pesar de lo potentes que sean sus caractersticas$ un framewor@ web carece de !alor si no consigue ahorrarle tiempo" #a filosofa de 7)ango es hacer todo lo posible por facilitar el desarrollo hiper r%pido" &on 7)ango se constru(en sitios web en cuestin de horas$ no dasN semanas$ no a,os" Esto es en gran parte posible gracias al propio -(thon" +%s all% de las !enta)as en producti!idad inherentes a -(thon$ el propio 7)ango hace todo lo posible para fomentar el desarrollo r%pido" Todas las partes del framewor@ se dise,aron con la producti!idad en mente" DISE3O LIMPIO 0 PRAGM2TICO 7)ango mantiene de forma rigurosa un dise,o limpio en su propio cdigo$ ( facilita que el programador siga las me)ores pr%cticas de desarrollo web en las aplicaciones que crea" 7)ango sigue la arquitectura del Mmodelo=!ista=controladorM (+B&)" 7icho de forma sencilla$ esto es una manera de desarrollar software para que el cdigo para definir ( acceder a los datos (el modelo) est separado de la lgica de negocio (el controlador)$ que a su !e' est% separada de la interfa' de usuario (la !ista)" CARACTERSTICAS: M4ed*! O56e"* Rel$%*#l: #os modelos de datos son definidos completamente en -(thon$ tiene *-0 robustas para el acceso a base de datos ( si se desea se puede escribir consultas 45# directamente" I#"e!+7 Ad8%#%)"!"%9 Au"*8:"%$: Ena !e' los modelos han sido creados$ 7)ango pro!ee una interfa' web para insertar datos ( actuali'ar contenidos de los ob)etos$ esto es autom%tico" D%)e;* ele-#"e de URL): 7)ango pro!ee En sistema de E/#s $ basado en e.presiones regulares$ lo que significa que en !e' de tener direcciones http:88website"com8/eportsO (earP1::9QmonthP;Qda(P;1$ podemos tener direcciones del estilo http:88website"com8/eports81::98:;8;1 " #as E/# son completamente personali'ables ( no est%n limitadas al >rame6or@" S%)"e8 de Te84l"e): 7)ango pro!ee un poderoso ( e.tensible sistema de templates $ que separa el dise,o del contenido ( del cdigo -(thon" I#"e!#l%7$%&#: 7)ango pro!ee soporte completo para aplicaciones multilengua)e$ permite especificar traducciones ( pro!ee herramientas para funcionalidades para lengua)es especficos" BIBLIOGRAFIA http:88!anesa=tech"blogspot"com8 http:88www"spar.s(stems"com"ar8platforms8softwareRde!elopment"html