Bibliotecas JavaScript, ICEfaces, Flash de Adobe, Microsoft Silverlight y ahora HTML5, la competencia global por el dominio de la red ha entrado en una nueva era: la era de las aplicaciones ricas de Internet (RIA para abreviar, también llamada aplicación rica de Internet en chino).
El propósito de este artículo es definir qué es RIA, explicar por qué la web ha comenzado a acercarse a RIA, explorar los diferentes marcos RIA que existen hoy en día, brindar una descripción general de algunos de los pros y los contras de cada marco y discutir qué Cómo se verán estas nuevas tecnologías en el estado de supervivencia del futuro.
¿Qué es una RIA?
La llamada RIA, o aplicación de red enriquecida, se refiere a una aplicación de red que puede funcionar como un programa de escritorio. Antes de que surgieran las RIA, la mayoría de las aplicaciones web se creaban con páginas estáticas.
Sumo Paint es un RIA basado en Flash con capacidades de edición de gráficos como Photoshop.
A diferencia de las aplicaciones de escritorio, cualquier interacción con una página web a menudo requiere recargar una página completamente nueva. Las aplicaciones de escritorio, por otro lado, tienen una interactividad de usuario mucho mejor porque todo el procesamiento ocurre en la propia máquina del usuario, lo que brinda una experiencia de usuario más fluida.
Como resultado, los desarrolladores de software comenzaron a preguntarse: "¿Nuestro producto debería ser una aplicación de escritorio o una aplicación web?".
Esta es siempre una pregunta justa, ya que ambos tipos de aplicaciones tienen sus pros y sus contras.
Las aplicaciones de escritorio tienen una interacción fluida con el usuario, pero el software se vende y sufre problemas de lanzamiento y actualización.
Las aplicaciones web, por otro lado, están fácilmente disponibles en línea, libres de los problemas asociados con las versiones y actualizaciones de software, pero tienen una experiencia de interactividad de usuario muy pobre.
Entonces, ¿cómo puedes conseguir lo mejor de ambos mundos?
RIA es lo mejor de ambos mundos. RIA se lanza a través de Internet y tiene interacciones de usuario muy ricas. Gracias a la aparición de Ajax, un método para que las aplicaciones web envíen solicitudes al servidor sin necesidad de actualizar, surgieron nuevas tecnologías que se sumaron al movimiento RIA.
Sobre la base de estas tecnologías, han surgido varios marcos para ayudar a los desarrolladores a crear e implementar aplicaciones web enriquecidas, como bibliotecas JavaScript, ICEfaces, Adobe Flash 4 (el predecesor de Flex 3), Microsoft Silverlight y HTML5.
Analicemos el marco RIA uno por uno.
Biblioteca JavaScript para aplicaciones web
Las bibliotecas de JavaScript como jQuery y MooTools se encuentran entre las primeras tecnologías que realmente pueden ayudar a implementar aplicaciones web enriquecidas, interactivas y fluidas. Proporcionan un marco RIA que maneja la funcionalidad de la interfaz de usuario aprovechando las secuencias de comandos del lado del cliente. Son archivos Javascript básicos integrados con algunas funciones útiles probadas en varios navegadores. Puede utilizar Ajax, así como manejar interacciones comunes basadas en eventos impulsadas por el usuario, como mostrar y ocultar contenido.
Los más populares actualmente son jQuery (especialmente usando jQuery UI), MooTools, YIU (Yahoo User Interface Library) y EXTJS. Estas bibliotecas incluyen componentes RIA como cuadrículas, gráficos y elementos de formulario complejos, así como herramientas para manejar Ajax. Lo más fascinante es que la mayoría de las bibliotecas de JavaScript para desarrollo web son de código abierto.
Si no desea comprar un entorno de desarrollo integrado (IDE), pero aún desea una funcionalidad RIA magnífica y profesional en su sitio web, las bibliotecas JavaScript son una excelente opción.
Los sitios web que utilizan bibliotecas de JavaScript incluyen Google, Digg, Yahoo, Amazon, Microsoft, Twitter y Best Buy.
caras de hielo
ICEfaces es una extensión del marco estándar JavaServer Faces (JSF) diseñada para simplificar el flujo de trabajo del programador eliminando JavaScript de la ecuación. En otras palabras, ICEfaces maneja todo JavaScript/Ajax por usted a través de la interfaz de aplicación Java. Al eliminar la compleja introducción de estas funciones personalizadas de JavaScript, la tarea de crear aplicaciones web enriquecidas se simplifica enormemente.
Si la mayoría de su equipo son desarrolladores de Java, o si su aplicación web no requiere componentes complejos que otros ICEfaces no tienen, o si su aplicación web está basada en eventos, entonces usar ICEfaces es una buena opción. Si su aplicación web está basada en eventos, asegúrese de comprender que ICEfaces no proporciona una verdadera tecnología "server push", que es compatible con HTML5, Flash Builder 4 y Silverlight. Sin embargo, en consecuencia, ICEfaces utiliza un método de sondeo largo para simular la tecnología de inserción del servidor.
Los sitios que utilizan ICEfaces incluyen Boeing, NASA, Union Pacific, T-Mobile y Bank of America.
Adobe Flash Constructor 4
Flash existe desde hace mucho tiempo, pero crear aplicaciones web completas utilizando Flash era engorroso hasta la introducción de Flex, una extensión de Flash que proporciona componentes web RIA.
Lo más interesante de Adobe Flash Builder 4 son sus funciones multiplataforma y navegador, lo que permite que el programa se ejecute de la misma manera en todos los sistemas operativos y todos los navegadores. En comparación con JavaScript, donde los navegadores tienen diferentes motores JavaScript que administran y procesan código, Flash de Adobe tiene un solo motor, que los usuarios instalan a través del complemento del navegador Adobe Flash (que generalmente es el que tienen).
Las aplicaciones Flash Builder 4 pueden hacer esto porque están integradas en la página HTML, lo que significa que el navegador en sí no tiene impacto en el rendimiento de la aplicación. Esto significa que puede ejecutar incluso las aplicaciones web más complejas en IE6 si así lo desea. (Esto es, por supuesto, sencillo, ya que el complemento/motor Flash se actualiza con frecuencia y, por lo tanto, depende sólo ligeramente de la versión del complemento del usuario).
Estas aplicaciones suelen ir acompañadas de procesamiento del lado del servidor, como un procesamiento back-end de Java, y requieren Flash Builder 4 IDE para su desarrollo.
Si su equipo desarrolla principalmente en Java (porque funciona bien con Java), o si su aplicación utiliza una arquitectura basada en eventos, puede elegir Adobe Flash Builder 4.
Los sitios web que utilizan Flash como aplicación web incluyen Mint.com, Flickr y Hyundai.
Luz plateada
Silverlight es básicamente la versión de Microsoft de Adobe Flex/Adobe Flash. Ha ganado algo de tracción, pero no parece haber alcanzado el nivel de popularidad que tiene Adobe Flash.
Las aplicaciones Silverlight obviamente están vinculadas al backend .NET porque es un producto de Microsoft. Esto significa que debe pensar en la integración entre Silverlight/.NET y Adobe Flex/[algunos scripts del lado del servidor como PHP].
Si su aplicación web requiere gráficos complejos, o si su equipo está formado principalmente por desarrolladores .NET, o si su aplicación utiliza una arquitectura basada en eventos, entonces puede elegir Silverlight.
Sitios web que utilizan Silverlight, como Netflix.
HTML5
HTML5 es el último desarrollo del movimiento RIA. HTML5 es esencialmente la mejor combinación de HTML4, JavaScript, CSS, bibliotecas de códigos Javascript y Falsh, que aprovecha el modelo API en una única especificación. HTML5 es una tecnología abierta, lo que significa que no habrá un único organismo rector como Flash para Adobe o Silverlight para Microsoft.
Dado que la especificación HTML5 aún no se ha completado y IE9 aún no se ha lanzado, aún debe esperar un poco más para crear aplicaciones web a nivel de producción.
Actualmente, todos los navegadores principales, excepto IE8, admiten HTML5. Dado que IE8 ocupa una parte importante del mercado de navegadores, es realmente difícil que HTML5 se generalice antes del lanzamiento de IE9.
Una vez que HTML5 sea ampliamente compatible, si no desea comprar ni aprender un IDE (requerido para marcos como Flex y Silverlight), si su aplicación usa una arquitectura basada en eventos o si prefiere usar funciones HTML y JavaScript integradas Funciones API en su lugar Usar una biblioteca JavaScript de terceros y luego usar HTML es una buena opción.
Aunque los gráficos se manejan bien en HTML5, usar Flash y Silverlight para manejar gráficos y animaciones complejos sigue siendo la opción más fácil y rápida en este momento.
¿Son las aplicaciones HTML5 el futuro de Internet? No exactamente. Mientras los desarrolladores web creativos e innovadores sigan creando algo especial, siempre surgirán nuevas tecnologías que pueden hacer cosas asombrosas que HTML5 o cualquier otra tecnología web no pueden hacer.
Las bibliotecas JavaScript, ICEfaces, Flash, Silverlight y HTML5 existen ante todo por su creatividad e innovación. Las redes futuras estarán formadas por muchas tecnologías coexistentes, tal como lo están ahora.
Fuente: sixrevisions.com
Compilado por: MazingTech
Gracias a MazingTech por su contribución.