qwertyuiopasdfghjklzxcvbnmqwe rtyuiopasdfghjklzxcvbnmqwertyui opasdfghjklzxcvbnmqwertyuiopa sdfghjklzxcvbnmqwertyuiopasdfg Generaciones De Los Lenguajes hjklzxcvbnmqwertyuiopasdfghjklz Programación de Sistemas xcvbnmqwertyuiopasdfghjklzxcv

bnmqwertyuiopasdfghjklzxcvbnm qwertyuiopasdfghjklzxcvbnmqwe rtyuiopasdfghjklzxcvbnmqwertyui opasdfghjklzxcvbnmqwertyuiopa sdfghjklzxcvbnmqwertyuiopasdfg hjklzxcvbnmqwertyuiopasdfghjklz xcvbnmqwertyuiopasdfghjklzxcv bnmqwertyuiopasdfghjklzxcvbnm qwertyuiopasdfghjklzxcvbnmqwe rtyuiopasdfghjklzxcvbnmrtyuiopa
15/10/2010 José Andrés Andrade Mariano 503 - A

........ Eiffel se utiliza en el mundo académico como lengua para la enseñanza de los principios de programación por computadoraEiffel se utiliza en las finanzas........ Eiffel is used in academia as a language for teaching computer-programming principles...............................................................5 Protocolo de meta-objetos................................................................................................................................................. after y.................................3 EN ESTE TRABAJO VEREMOS LO QUE SON LAS GENERACIONES DE LOS LENGUAJES DE ALTO NIVEL Y VEREMOS SOLAMENTE 3 CLASIFICACIONES Y LOS PROGRAMAS QUE EN CADA DE UNA DE LAS GENERACIONES MANEJA ............................................................................................................................................................... Desde 1985.............................................................................................................................................11 DELPHI............................................4 GENERACION ORIENTADA A OBJETOS............ around........9 GENERACION VISUAL................................................................................................................. Muchos conceptos se introdujo inicialmente por Eiffel tarde encontraron su camino en Java ..................................................... juegos y otras industrias como plataforma de desarrollo....................................................................................................14 ...........................11 GENERACION INTERNET..........................................6 SMALLTALK....... de salud.................5 Eiffel es un ISO -estandarizado............................... orientado a objetos lenguaje de programación diseñado para permitir a los programadores a desarrollar ampliable................5 Prototipos..............................................................................13 VRML ............................. ...........................................INDICE INDICE..........................8 TURBO PASCAL......................................................................................................................................................................5 Herencia múltiple.......... siendo incorporado al lenguaje Eiffel.........................2 INTRODUCCION................................................................................5 JAVA.............................................................................................5 Dinámico........................................13 VENTAJAS DEL XML.................. C # y otros lenguajes.................................................................................................4 Empaquetamiento.................................. la industria aeroespacial...........................................................................................5 EIFFEL .........5 Métodos: before......................3 CLASIFICACION DE LOS LENGUAJES POR GENERACIONES............................................... vídeo.............4 C++................... Nuevo diseño de las ideas y el lenguaje. en particular a través de la ECMA / ISO proceso de normalización................................................................. fiable software reutilizable eficiente....................................................................... muchos proveedores han desarrollado entornos de programación Eiffel...................

INTRODUCCION En este trabajo veremos lo que son las generaciones de los lenguajes de alto nivel y veremos solamente 3 clasificaciones y los programas que en cada de una de las generaciones maneja .

Posteriormente se añadieron facilidades de programación genérica. pero posteriormente CLOS fue adoptado como parte de estándar ANSI de Common Lisp. al que se han adherido la mayoría de los fabricantes de compiladores más modernos. cuando el lenguaje fue utilizado por primera vez fuera de un laboratorio científico. CLOS es un lenguaje de programación dinámico dirigido a objetos que difiere mucho de lo que podemos encontrar en lenguajes de programación estáticos orientados a objetos como C++ o Java. aunque es más general que éstos. CLOS CLOS es el acrónimo inglés de Common Lisp Object System y es una extensión de ANSI Common Lisp para permitir la programación orientada a objetos que ha sido adoptada por otros dialectos de Lisp como EuLisp o Emacs Lisp. que se sumó a los otros dos paradigmas que ya estaban admitidos. El nombre C++ fue propuesto por Rick Mascitti en el año 1983. y de poder crear nuevos tipos que se comporten como tipos fundamentales. La intención de su creación fue el extender al exitoso lenguaje de programación C con mecanismos que permitan la manipulación de objetos. Actualmente existe un estándar. tales como ROOT. Una particularidad del C++ es la posibilidad de redefinir los operadores. la expresión "C++" significa "incremento de C" y se refiere a que C++ es una extensión de C. el C++ es un lenguaje híbrido. En ese sentido. Antes se había usado el nombre "C con clases". Existen también algunos intérpretes. denominado ISO C++.CLASIFICACION DE LOS LENGUAJES POR GENERACIONES GENERACION ORIENTADA A OBJETOS C++ C++ es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne Stroustrup. Precisamente la generalidad de CLOS es la . En C++. CLOS está inspirado en sistemas Lisp orientados a objetos anteriores como MIT Flavors o Common LOOPS. Inicialmente fue propuesta como un añadido (add-on) del lenguaje. Por esto se suele decir que el C++ es un lenguaje de programación multiparadigma. desde el punto de vista de los lenguajes orientados a objetos.

aunque crear un sistema OO en Lisp es fácil. Muchos conceptos se introdujo inicialmente por Eiffel tarde encontraron su camino en Java . C # y otros lenguajes. Las características clave del lenguaje Eiffel incluyen: • Una estructura de programa orientado a objetos en los que una clase sirve como la unidad básica de la descomposición. A pesar de que CLOS es un completo sistema de orientado a objetos. juegos y otras industrias como plataforma de desarrollo. Pero hacer que Lisp sea orientado a objetos y a la vez tan extensible y flexible como el resto de sistema Lisp es más complicado. Desde 1985. orientado a objetos lenguaje de programación diseñado para permitir a los programadores a desarrollar ampliable. vídeo. fiable software reutilizable eficiente. Conseguir que Lisp sea orientado a objetos es fácil: se puede hacer en tan sólo dos páginas de código (Paul Graham. Características: • Resolución múltiple Empaquetamiento Métodos: before. siendo incorporado al lenguaje Eiffel. La implementación orientada a objetos de CLOS se conoce como CLOS Metaobject Protocol o MOP y permite que el sistema sea extensible y personalizable. after y. muchos proveedores han desarrollado entornos de programación Eiffel. Nuevo diseño de las ideas y el lenguaje. 1994). en particular a través de la ECMA / ISO proceso de normalización.carácterística más difícil de obtener. de salud. . Eiffel is used in academia as a language for teaching computerprogramming principles. around Herencia múltiple Dinámico Prototipos Protocolo de meta-objetos EIFFEL Eiffel es un ISO -estandarizado. CLOS se implementa siguiendo el modelo de la programación orientada a objetos. la industria aeroespacial. Eiffel se utiliza en el mundo académico como lengua para la enseñanza de los principios de programación por computadoraEiffel se utiliza en las finanzas.

Vacío de seguridad. Basado en la sintaxis de palabra clave en el ALGOL / Pascal tradición. o los objetos que los cálculos del abrigo. aunque la ejecución directa por hardware del bytecode por un procesador Java también es posible. redefinición . En el tiempo de ejecución. El lenguaje en sí mismo toma mucha de su sintaxis de C y C++. en la medida en puntos y comas son opcionales. Sun ha controlado las especificaciones. el desarrollo y evolución del lenguaje a través del Java Community Process. aunque la compilación en código máquina nativo también es posible. Una vez que las rutinas. el cambio de nombre .• • • • • • • • • • El diseño por contrato estrechamente integrado con el lenguaje de otras construcciones. "seleccionar". si bien otros han desarrollado también implementaciones alternativas de estas tecnologías de Sun. como la manipulación directa de punteros o memoria. desarrollado por Sun Microsystems a principios de los años 90. Un sistema de tipos de uniforme el manejo tanto de valor y la semántica de referencia en que todos los tipos. estrechamente relacionada con el cierre y el cálculo lambda . La herencia . pero sin separación. no conforme la herencia . incluyendo la herencia múltiple . o rutinas evalúa sólo una vez. JAVA Java es un lenguaje de programación orientado a objetos. están basados en clases. Mayúsculas y minúsculas. pero tiene un modelo de objetos más simple y elimina herramientas de bajo nivel. por lo general aplicado por la recolección de basura . La implementación original y de referencia del compilador. algunas incluso bajo licencias de software libre. . Con y sin restricciones de programación genérica . de gestión de memoria automática. para el intercambio de objeto y la inicialización descentralizada. incluidos los tipos básicos como INTEGER. la máquina virtual y las bibliotecas de clases de Java fueron desarrolladas por Sun Microsystems en 1995. Las aplicaciones Java están típicamente compiladas en un bytecode. el bytecode es normalmente interpretado o compilado a código nativo para la ejecución. o protección contra la estática pide referencias nulas. Desde entonces. Agentes. a través del mecanismo de unir-tipos. y otros mecanismos destinados a hacer que la herencia segura. La seguridad de tipos ( tipos estáticos ). con la sintaxis de operador disponible para las rutinas. que suelen inducir a muchos errores.

La sintaxis de orientación a objetos de Oberon no se parece a la de otros lenguajes más populares como C++ o Java. de acuerdo con las especificaciones del Java Community Process. Web y bases de datos. recolector de basura y es fuertemente tipado. depuración y ejecución se realizan con la misma herramienta. con lo que las tareas de edición. De este lenguaje y de sus antecesores hereda buena parte de la sintaxis y de la filosofía. También está diseñado con la seguridad en mente: tiene chequeos de rango en arrays. Wirth siempre ha intentado simplificar los lenguajes sin que por ello se pierda en potencia. Sun Microsystems liberó la mayor parte de sus tecnologías Java bajo la licencia GNU GPL. Permite la creación de una manera sencilla y rápida de sofisticadas aplicaciones de alto rendimiento en Linux. Sin embargo. escrito en este lenguaje y para este lenguaje. Es un producto comercial aunque hay una versión Open Edition gratuita (sólo binarios) que puede usarse para desarrollar proyectos GPL (Licencia Pública General). por su intento de simplicidad carece de enumeraciones y enteros restringidos en rango. Básicamente es un clon del entorno Delphi para Windows. Oberon es también el nombre de un sistema operativo. Oberon se ha portado a otros sistemas .Entre diciembre de 2006 y mayo de 2007. un depurador interactivo y un conjunto de componentes que permite a los analistas y programadores de software liberar aplicaciones basadas en Linux para ambientes de escritorio. Es un entorno integrado (IDE). OBERON Oberon es un lenguaje de programación orientado a objetos y procedimental creado por Niklaus Wirth (autor también de Pascal. los cuales pueden implementarse como objetos. Está Orientado a objetos y utiliza los lenguajes de programación Object Pascal y C++. Modula y Modula-2) y sus colaboradores del ETHZ (Suiza). pero sí guarda similitud con la de Ada 95. Combina un entorno visual intuitivo. Oberon puede considerarse una evolución de Modula-2 con un soporte completo de orientación a objetos. de tal forma que prácticamente todo el Java de Sun es ahora software libre. Se trata del primer entorno nativo de Desarrollo Rápido de Aplicaciones (RAD) para GNU/Linux. KYLIX Kylix es un entorno de desarrollo rápido de aplicaciones RAD (desarrollo rápido de aplicaciones) creado por Borland para GNU/Linux. optimizado mediante un compilador nativo.

Por otra parte Simula 67 fue lanzado oficialmente por sus autores Ole Johan Dahl y Kristen Nygaard en mayo de 1967. el conjunto de herramientas de interfaz del usuario fue escrito utilizando objetos de Lisp. en Lysebu cerca de Oslo Hoy en día. un dialecto del Lisp idioma. el cual generaliza todas las construcciones del lenguaje en una única idea denominada patrón. También existe un proyecto para crear un compilador para la plataforma . Fue una orientada a objetos de extensión para el dialecto de Lisp Lisp Máquina Lisp . herencia. el inventor de Pascal. SIMULA Simula es el primer lenguaje de programación orientada a objetos (OOP). los creadores de Simula han producido un segundo lenguaje de programación. objetos comunes desarrollada por Hewlett-Packard . en la Conferencia de Trabajo en Lenguajes de Simulación IFIO TC 2. mientras que la producción altamente optimizado código. diseñado por Lisp Machines . que estaba disponible en el Lisa equipo. en uso de Xerox . OBJECT PASCAL Object Pascal se refiere a una rama de la orientada a objetos derivados de Pascal . Varios años después de su desarrollo. Allí. objeto Lisp fue también un ejemplo temprano de la programación basada en prototipos . en consulta con Niklaus Wirth . llamado Beta. Object Pascal es una extensión del lenguaje Pascal que se desarrolló en Apple Computer por un equipo dirigido por Larry Tesler .(incluyendo a Windows y sistemas Unix) e incluso se puede compilar en código de bytes para la máquina virtual de Java. más conocido como el principal lenguaje de programación de Embarcadero Delphi. Fue visto como un competidor de otras extensiones orientadas a objetos para Lisp en torno al mismo tiempo. objetos. Inc. etc. Así fue como se popularizaron términos como clases. SMALLTALK . correr muy rápido. OBJECT LISP Objetos de Lisp fue un equipo lenguaje de programación . y CommonLoops . polimorfismo. Es descendiente de una orientada a objetos versión anterior de Pascal llamada Clascal . tales como Sabores . en uso por Simbólica . instancias. casi todos los lenguajes modernos comenzaron a utilizar sus principios de orientación a objetos.NET.

desarrollo incremental.Smalltalk es un lenguaje de programación que permite realizar tareas de computación mediante la interacción con un entorno de objetos virtuales.). etc. Adele Goldberg y otros durante los años setenta en el Palo Alto Research Institute de Xerox (conocido como Xerox PARC). Smalltalk es considerado el primero de los lenguajes orientados a objetos (OOP). desarrollo dirigido por tests. El objetivo era crear un sistema que permitiese expandir la creatividad de sus usuarios. Como lenguaje tiene las siguientes características: • • • • • • • • Orientación a Objetos Pura Tipado dinámico Interacción entre objetos mediante envío de mensajes Herencia simple y con raíz común Reflexión computacional completa Recolección de basura Compilación en tiempo de ejecución o Interpretado (dependiendo de la distribución o del proveedor) Múltiples Implementaciones Smalltalk ha tenido gran influencia sobre otros lenguajes como Java o Ruby. En Smalltalk todo es un objeto. proporcionando un entorno para la experimentación. TURBO PASCAL . Ted Kaehler. se puede considerar que un Smalltalk es un mundo virtual donde viven objetos que se comunican mediante el envío de mensajes. para la creación de un sistema informático orientado a la educación. Un sistema Smalltalk está compuesto por: • • • • • Máquina virtual Imagen virtual que contiene todos los objetos del sistema Lenguaje de programación (también conocido como Smalltalk) Biblioteca de Objetos reusables Opcionalmente un entorno de desarrollo que funciona como un sistema en tiempo de ejecución. Los orígenes de Smalltalk se encuentran en las investigaciones realizadas por Alan Kay. Metafóricamente. y de su entorno han surgido muchas de las prácticas y herramientas de desarrollo promulgadas actualmente por las metodologías ágiles (refactorización. creación e investigación. incluidos los números reales o el propio entorno Smalltalk. aunque en realidad el primero en implementar programación orientada a objetos fue Simula. Dan Ingalls.

3. El nombre de Borland Pascal fue generalmente reservado para los paquetes de gama alta para Microsoft Windows (con más bibliotecas y la biblioteca estándar de código fuente). desarrollado por Borland y liderado por Philippe Kahn. 5.Turbo Pascal es un completo sistema de desarrollo de software que incluye un compilador y un entorno de desarrollo integrado (IDE) para el lenguaje de programación Pascal. más barato y ampliamente conocida versión fue vendido como Turbo Pascal. Se llama asi por que compila en un minuto. Fue lanzado en 1983 para MS-DOS.02. 4. CP/M. 5 .0.5 . mientras que la original. posteriormente. También hubo una versión de corta vida para Apple Macintosh. Borland lanzó siete versiones de Turbo Pascal: 1. CP/M-86 y. . para Microsoft Windows. Fue sustituido por Borland Delphi. 6 y 7 para MS-DOS.

Desde el 2001 Microsoft ha propuesto . tras un proceso que pretendía en principio la venta del departamento de herramientas para desarrollo. también la programación misma. donde Delphi se creó originalmente. adquirida en mayo de 2008 por Embarcadero Technologies. por lo que es la preferida por Borland. incluida Gran Bretaña. aplicaciones de web. es el desarrollo de aplicaciones visuales y de bases de datos cliente-servidor y multicapas.NET. se usa también para proyectos de casi cualquier tipo. El lenguaje de programación es un dialecto de BASIC. Un uso habitual de Delphi. una empresa del grupo Thoma Cressey Bravo. con la intención de simplificar la programación utilizando un ambiente de desarrollo completamente gráfico que facilitara la creación de interfaces gráficas y. CodeGear ha sido escindida de la empresa Borland. Es producido comercialmente por la empresa estadounidense CodeGear.GENERACION VISUAL DELPHI Delphi es un entorno de desarrollo de software diseñado para la programación de propósito general con énfasis en la programación visual. GNU/Linux y la plataforma . VISUAL BASIC Visual Basic es un lenguaje de programación desarrollado por el alemán Alan Cooper para Microsoft. En la actualidad da más posibilidades. en cierta medida. que sería su conectividad con bases de datos Oracle (oráculo. En sus diferentes variantes. Delphi inicialmente sólo producía ejecutables binarios para Windows: Delphi 1 para Win16 y con Delphi 2 se introdujo Win32. permite producir archivos ejecutables para Windows. en una suma que ronda los 30 millones de dólares. con importantes agregados. El nombre Delphi hace referencia al oráculo de Delfos. en inglés). aunque no el único. En Delphi se utiliza como lenguaje de programación una versión moderna de Pascal llamada Object Pascal. Se usa delfái en inglés de Estados Unidos (existe una población Delphi con esa pronunciación). Borland eligió ese nombre para resaltar su principal mejora con respecto a su antecesor (Turbo Pascal). Su primera versión fue presentada en 1991. incluyendo aplicaciones de consola. El nombre se suele pronunciar delfi en Europa. Debido a que es una herramienta de propósito múltiple.

o.NET (y otros lenguajes como C Sharp (C#) de fácil transición de código entre ellos).abandonar el desarrollo basado en la API Win32 y pasar a trabajar sobre un framework o marco común de librerías independiente de la versión del sistema operativo. . . Integrated Development Enviroment) que ha sido empaquetado como un programa de aplicación. y un constructor de interfaz gráfica o GUI. es decir.NET Framework. Visual Basic (Visual Studio) constituye un IDE (entorno de desarrollo integrado. un compilador. a través de Visual Basic . consiste en un editor de código. un depurador. en inglés.

arrastrarlos. Un poco de historia El VRML surgió en la primavera de 1994.GENERACION INTERNET VRML VRML es un lenguaje para modelar mundos en virtuales en 3D. Con el tiempo se desarrolló el lenguaje dentro de varios requisitos: que fuese adaptable a la red. que no requiriese una línea de alta velicidad (anchos de banda elevados). . etc. en la Primera Conferencia Mundial de la WWW en Ginebra se aprobó el desarrollo de un nuevo lenguaje que permitiese crear mundos en tres dimensiones a los que se pudiera acceder por la World Wide Web. El Virtual Reality Modeling Language es un lenguaje de modelado de mundos virtuales en tres dimensiones. arriba y abajo. Sin embargo. no solo izquierda y derecha sino también adelante. VRML sirve para crear mundos en tres dimensiones a los que accedemos utilizando nuestro navegador. También los escenarios son mucho más reales. sino que nos permite ver todo tipo de objetos y construcciones en 3D por los que podemos pasear o interactuar. tomar determinados libros y leerlos. En élla podríamos andar por cada una de las salas. Para empezar la navegación se desarrolla de una manera mucho más intuitiva. el acceso a Internet se ha de convertir en una experiencia mucho más cercana a la que realizamos en la vida y las visitas a los lugares retratados en la Red serán mucho más reales. tocarlos. etc. en la actualidad VRML presenta muchas limitaciones con respecto a sus potencialidades. De este modo. y en general todo lo que podais imaginar. Podemos tratar con los objetos como en la vida misma. dado que la forma de actuar dentro del mundo virtual es similar a la de la vida real. A la larga. durante una reunión convocada por Tim Berners-Lee y Dave Ragget para tratar de acercar los desarrollos de realidad virtual a Internet. igual que si visitamos una página web cualquiera. que fuese multiplataforma. que se irán cubriendo con la llegada de máquinas más potentes y periféricos avanzados para la realidad virtual como pueden ser guantes o cascos. Este modo de visitar sitios en Internet es mucho más avanzado y posee grandes ventajas. con la salvedad que nuestras visitas no se limitan a ver un simple texto y fotografías. Podemos movernos en todas las direcciones. pensemos en un ejemplo como podría ser una biblioteca virtual. Igual que el HTML nos sirve para maquetar páginas web. atrás. En esta reunión los asistentes llegaron a la conclusión que se tenía que desarrollar un lenguaje común para la descripción de los mundos en 3D.

MathML. fiable y fácil. Se puede usar en bases de datos. Tiene un papel muy importante en la actualidad ya que permite la compatibilidad entre sistemas para compartir la información de una manera segura. es decir. XML no ha nacido sólo para su aplicación en Internet. es un metalenguaje extensible de etiquetas desarrollado por el World Wide Web Consortium (W3C). Por lo tanto XML no es realmente un lenguaje en particular. sino una manera de definir lenguajes para diferentes necesidades. XML es una tecnología sencilla que tiene a su alrededor otras que la complementan y la hacen mucho más grande y con unas posibilidades mucho mayores. Mejora la compatibilidad entre aplicaciones. es posible extender XML con la adición de nuevas etiquetas. Esto posibilita el empleo de cualquiera de los analizadores disponibles. Es una simplificación y adaptación del SGML y permite definir la gramática de lenguajes específicos (de la misma manera que HTML es a su vez un lenguaje definido por SGML). Si un tercero decide usar un documento creado en XML. Ventajas del XML • • • Es extensible: Después de diseñado y puesto en producción. es sencillo entender su estructura y procesarla. sin que importe el origen de los datos.XML XML. De esta manera se evitan bugs y se acelera el desarrollo de aplicaciones. hojas de cálculo y casi cualquier cosa imaginable. Podemos comunicar aplicaciones de distintas plataformas. siglas en inglés de eXtensible Markup Language (lenguaje de marcas extensible). SVG. no es necesario crear un analizador específico para cada versión de lenguaje XML. El analizador es un componente estándar. editores de texto. de modo que se pueda continuar utilizando sin complicación alguna. . podríamos tener una aplicación en Linux con una base de datos Postgres y comunicarla con otra aplicación en Windows y Base de Datos MS-SQL Server. sino que se propone como un estándar para el intercambio de información estructurada entre diferentes plataformas. Algunos de estos lenguajes que usan XML para su definición son XHTML.

es el lenguaje de marcado predominante para la elaboración de páginas web. de una primera proposición para una especificación de HTML .>).• Transformamos datos en información. la apariencia de un documento. pero no fue formalmente reconocida como tal hasta la publicación de mediados de 1993. HTML HTML. pues se le añade un significado concreto y los asociamos a un contexto. publicado por primera vez en Internet por Tim Berners-Lee en 1991. así como para complementar el texto con objetos tales como imágenes. Es usado para describir la estructura y el contenido en forma de texto. hasta un cierto punto. HTML se escribe en forma de "etiquetas".[3] Berners-Lee consideraba a HTML una ampliación de SGML. HTML también puede describir. Trece de estos elementos todavía existen en HTML 4. el cual puede afectar el comportamiento de navegadores web y otros procesadores de HTML. rodeadas por corchetes angulares (<. por la IETF. La primera descripción de HTML disponible públicamente fue un documento llamado HTML Tags (Etiquetas HTML). y puede incluir un script (por ejemplo Javascript). con lo cual tenemos flexibilidad para estructurar documentos.[1] [2] Describe 22 elementos comprendiendo el diseño inicial y relativamente simple de HTML. siglas de HyperText Markup Language (Lenguaje de Marcado de Hipertexto). HTML también es usado para referirse al contenido del tipo de MIME text/html o todavía más ampliamente como un término genérico para el HTML.

CONCLUSION Como vimos en este trabajo existen muchos lenguajes de programación que cumplen distintas funciones y vemos que no existe un lenguaje de programación perfecto porque lo que a uno le falta otro cubre ese parte y así con los demás. además de que también hay unos que se diseñaron a partir de otros y son sus antecesores .

Software de Sistemas.org/ Beck. Introducción a la programación de Sistemas.desarrolloweb.wikipedia.com/manuales/15/ http://es. .REFERENCIAS BIBLIOGRAFICAS http://www. Addison-Wesley Iberoamericana.