Aplicaciones Enriquecidas Para Internet: Estado Actual Y Tendencias
Total Page:16
File Type:pdf, Size:1020Kb
Universidad de San Carlos de Guatemala Facultad de Ingeniería Escuela de Ciencias y Sistemas APLICACIONES ENRIQUECIDAS PARA INTERNET: ESTADO ACTUAL Y TENDENCIAS Miguel Alejandro Catalán López Asesorado por la Inga. Erika Yesenia Corado Castellanos de Lima Guatemala, enero de 2012 UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERÍA APLICACIONES ENRIQUECIDAS PARA INTERNET: ESTADO ACTUAL Y TENDENCIAS TRABAJO DE GRADUACIÓN PRESENTADO A JUNTA DIRECTIVA DE LA FACULTAD DE INGENIERÍA POR MIGUEL ALEJANDRO CATALÁN LÓPEZ ASESORADO POR LA INGA. YESENIA CORADO CASTELLANOS DE LIMA AL CONFERÍRSELE EL TÍTULO DE INGENIERO EN CIENCIAS Y SISTEMAS GUATEMALA, ENERO DE 2012 UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERÍA NÓMINA DE JUNTA DIRECTIVA DECANO Ing. Murphy Olympo Paiz Recinos VOCAL I Ing. Enrique Alfredo Beber Aceituno VOCAL II Ing. Pedro Antonio Aguilar Polanco VOCAL III Ing. Miguel Ángel Dávila Calderón VOCAL IV Br. Juan Carlos Molina Jiménez VOCAL V Br. Mario Maldonado Muralles SECRETARIO Ing. Hugo Humberto Rivera Pérez TRIBUNAL QUE PRACTICÓ EL EXAMEN GENERAL PRIVADO DECANO Ing. Murphy Olympo Paiz Recinos EXAMINADOR Ing. Juan Álvaro Díaz Ardavin EXAMINADOR Ing. Edgar Josué González Constanza EXAMINADOR Ing. José Ricardo Morales Prado SECRETARIO Ing. Hugo Humberto Rivera Pérez HONORABLE TRIBUNAL EXAMINADOR En cumplimiento con los preceptos que establece la ley de la Universidad de San Carlos de Guatemala, presento a su consideración mi trabajo de graduación titulado: APLICACIONES ENRIQUECIDAS PARA INTERNET: ESTADO ACTUAL Y TENDENCIAS Tema que me fuere asignado por la Dirección de la Escuela de Ingeniería en Ciencias y Sistemas, con fecha marzo de 2011. Miguel Alejandro Catalán López Guatemala, 13 de junio de 2011 Ingeniero Marlon Antonio Pérez Turk Director Escuela de Ciencias y Sistemas USAC Señor Director: Por medio de la presente, informo a usted que he revisado el trabajo de graduación titulado: “APLICACIONES ENRIQUECIDAS PARA INTERNET: ESTADO ACTUAL Y TENDENCIAS”, el cual fue realizado por el estudiante MIGUEL ALEJANDRO CATALÁN LÓPEZ, el cual encuentro satisfactorio. Sin otro particular, me es grato suscribirme de usted. Atentamente, Inga. Erika Yesenia Corado Castellanos de Lima Colegiado 8418 Asesor Carta de turk CARTA MURPHY ACTO QUE DEDICO A: Dios Por hacerme una persona bendecida, por regalarme la familia que tengo, por darme las oportunidades que me ha dado y por cada segundo de mi vida en los cuales nunca me ha desamparado. Por darme la oportunidad de estar aquí hoy. Toda la gloria y la honra sean para Él. Mis padres Por todo el esfuerzo que realizaron para ayudarme a cumplir esta meta, por sus palabras, sus consejos y el tiempo que me regalaron cuando lo necesité. Por el ejemplo que me han dado, por corregirme y apoyarme siempre, aunque a veces las circunstancias no fueran las mejores. Por aguantarme en las mañanas y por buscar siempre mi bienestar y el de mis hermanos. Este objetivo alcanzado es suyo también. Mi abuela Alicia Por la sabiduría que me brindó con sus palabras, por guiarme desde pequeño por un buen camino, por corregirme y regalarme de su amistad y su conocimiento. Muchas gracias. Mis hermanos Luis y Jorge, porque de sus actitudes he podido tomar ejemplo para mi vida, por cada plática con ustedes en las que siempre he aprendido algo nuevo, porque hasta en las situaciones más difíciles he podido bromear y soltar carcajadas a su lado. Mi esposa Karla Por tu compañía durante todo este proceso. Por ser la voz que me da fuerza cuando creo no poder, por ser el equilibrio de mi vida, por estar a mi lado en los momentos más difíciles y en los más alegres. Gracias por regalarme de tu amor y sabiduría, por ser mi amiga y compañera de vida. Mis amigos y Por el apoyo y amistad que me han brindado y por hacer amigas más llevaderos los momentos difíciles de la carrera. Gracias por sus consejos y por el conocimiento que me permitieron adquirir de ustedes. Inga. Yesi Corado Por la amistad, consejo y apoyo que me ha brindado en todo momento, gracias por compartir su conocimiento y regalarme de su tiempo, ya que gracias a ello hoy culmina una etapa más en mi vida. ÍNDICE GENERAL ÍNDICE DE ILUSTRACIONES .............................................................................. VII GLOSARIO ............................................................................................................ XI RESUMEN .......................................................................................................... XXI OBJETIVOS ...................................................................................................... XXIII INTRODUCCIÓN ............................................................................................... XXV 1. APLICACIONES ENRIQUECIDAS PARA INTERNET (RIA) .......................... 1 1.1. Aplicaciones web ................................................................................. 1 1.1.1. Historia de las aplicaciones web ............................................ 3 1.1.2. Arquitectura de las aplicaciones web .................................... 13 1.1.2.1. Modelo cliente-servidor ........................................ 13 1.1.2.1.1. Ventajas ............................................ 14 1.1.2.1.2. Desventajas ...................................... 14 1.1.2.2. Arquitectura de n-capas ....................................... 15 1.2. Aplicaciones enriquecidas para internet (RIA) ................................... 18 1.2.1. Historia .................................................................................. 20 1.2.2. Arquitectura ........................................................................... 25 1.2.2.1. Comunicación asíncrona ...................................... 26 1.2.2.2. Rich clients ........................................................... 29 1.2.2.3. Aislamiento de procesos ...................................... 31 1.2.2.4. Plug-in .................................................................. 34 1.2.3. Aplicaciones web vs. aplicaciones enriquecidas para internet .................................................................................. 35 1.2.4. Ventajas y desventajas de las aplicaciones enriquecidas para internet .......................................................................... 39 I 1.2.4.1. Ventajas ............................................................... 39 1.2.4.2. Desventajas ......................................................... 40 1.3. Aplicación RIA en Intranet o Internet ................................................. 41 2. HERRAMIENTAS DE DESARROLLO PARA APLICACIONES RIA ............ 43 2.1. Software propietario y software gratuito ............................................ 43 2.1.1. Software propietario .............................................................. 44 2.1.2. Software gratuito ................................................................... 45 2.2. Herramientas de software .................................................................. 45 2.2.1. Adobe Flash Builder .............................................................. 46 2.2.1.1. Entorno de desarrollo ........................................... 47 2.2.1.2. Actionscript .......................................................... 48 2.2.1.3. MXML ................................................................... 48 2.2.1.4. Flash Player ......................................................... 49 2.2.1.5. Adobe Air ............................................................. 50 2.2.2. Microsoft Silverlight ............................................................... 51 2.2.2.1. Entorno de desarrollo ........................................... 52 2.2.2.2. XAML ................................................................... 53 2.2.2.3. .NET RIA Services ............................................... 54 2.2.2.4. Windows Presentation Foundation....................... 55 2.2.3. JavaFX .................................................................................. 57 2.2.3.1. Entorno de desarrollo ........................................... 61 2.2.3.2. JavaFX Script ....................................................... 63 2.2.3.3. JavaFX TV ........................................................... 64 2.2.3.4. JavaFX Mobile ..................................................... 64 2.2.4. Mono Moonlight .................................................................... 65 2.2.4.1. Entorno de desarrollo ........................................... 68 2.2.4.2. Dependencias ...................................................... 70 2.2.4.3. Plug-in Mono Moonlight ....................................... 72 II 2.2.5. OpenLaszlo ........................................................................... 73 2.2.5.1. Entorno de desarrollo ........................................... 75 2.2.5.2. LZX ....................................................................... 77 2.2.5.3. OpenLaszlo Development Kit ............................... 78 2.2.6. HTML5 .................................................................................. 79 2.2.6.1. Entorno de desarrollo ........................................... 81 2.2.6.2. CSS3 .................................................................... 83 2.2.6.3. JavaScript ............................................................. 87 2.2.6.4. DOM ..................................................................... 88 2.2.6.5. XHTML ................................................................. 89 2.3. Elección de una herramienta para crear aplicaciones