Sitio Web del poderoso ChicoDotNet

Sitio Web del poderoso ChicoDotNet es el lugar donde puedes aprender todo lo nuevo sobre desarrollo de aplicaciones para Windows, ASP .NET, SmartClient y adquirir los súper poderes que te da la mejor plataforma de creación de programas: Microsoft .NET

20070814

Interfases de usuario ricas basadas en lenguajes XML

En esta ocasión les platicaré acerca de las opciones que existen para programar interfases de usuario ricas a partir de archivos de texto con formatos XML.

Primeramente el favorito de los últimos tiempos: XAML (se pronuncia xamel o shamel), que es un estándar abierto de Microsoft para la creación de interfases basadas en Windows Presentation Foundation que es una de las partes que vienen con .NET 3.0. Normalmente puedes producir interfases XAML utilizando Visual Studio o Microsoft Expression pero también lo puedes hacer desde cualquier editor de texto, y esto es una gran ventaja ya que desde cualquier lugar podrías corregir un detallito en tu aplicación aunque no tengas tu computadora usual a la mano. La forma en la que funciona es que se interpreta por un subsistema de Windows Vista o de Windows XP/Server 2003 con .NET 3.0 que reemplaza al GDI tradicional de Windows, este subsistema conecta los diferentes elementos con el CLR permitiéndote crear eventos totalmente de capa de presentación que interactúen con tus clases tradicionales de .NET 2.0 y obviamente por diseño esto puede hacerse también con librerías legadas de .NET 1.1 o de COM por medio de encapsulamiento, por lo que la migración de la interfase común a la atractivamente bonita e interactiva no debería significar cambios mayores en tu arquitectura de aplicación. Los gráficos vectoriales creados por medio de XAML pueden ser creados en 2D y 3D.

XAML viene del acrónimo eXtensible Application Markup Language, aunque originalmente en la etapa de "nombre clave" era eXtensible Avalon Markup Language.

XAML puede implementar casi el mismo código del lado Web que del lado Windows, en el caso de los controles de presentación propios de Windows existe la opción de hacerlo mediante Silverlight o Moonlight, lo cual permite que pueda consumirse el contenido de WPF en cualquier lugar (WPF/e).

La opción competidora más famosa es Adobe Flash (antes Macromedia Flash), si bien ha sido por mucho tiempo un estándar líder en la industria el API está basado en una implementación propietaria de JavaScript llamada ActionScript que implementa los estándares ECMA. La parte XML de Flash se llama FJAX y se implementa utilizando AJAX por medio de HTTP, que comunicaría a Flash con DOM o directamente con .NET o cualquier otro lenguaje del lado del servidor.

Interacción FJAX

Otra opción es XUL, que viene de las siglas XML-based User-interface Language, es un lenguaje propuesto por Mozilla, no es un estándar, su lógica de negocio está basada en Javascript y su principal ventaja era precisamente esa, al ejecutarse sobre un lenguaje ECMA se puede ejecutar en distintos sistemas operativos, la desventaja es que está diseñado como lenguaje del lado del cliente. Está dividido en tres grupos de componentes: Content, Skin y Locale: Content contiene la definición de los objetos de interfase de usuario; Skin define los elementos de presentación como hojas de estilo CSS y XSL; Locale define los componentes de presentación por medio de uno o más DTD.

La última opción que comentaré en esta ocasión es SVG (Scalable Vector Graphics), que es una recomendación de W3C para generar gráficos en 2D vectoriales los cuáles pueden animarse utilizando SMIL (Synchronized Multimedia Integration Language) que es un estándar de W3C, lo cuál lo hace bastante confiable además de ser también un lenguaje basado en XML, sin embargo la desventaja de SVG es que no todos los navegadores soportan su uso sin conectores de terceros, que las gráficas de la interfase de usuario no pueden ser en 3D nativo y que su lógica también funciona del lado del cliente.

Todas las opciones expuestas en esta entrada permiten generar aplicaciones con interfases de usuario ricas que incluyan vídeo, datos, imágenes y gráficos vectoriales, sin embargo mi conclusión sobre la opción más poderosa y sencilla de implementar es XAML.

Etiquetas: , , , , , , , ,

Escrito por Alfonso Lara Ramos @ 13:38

Busca Interfases de usuario ricas basadas en lenguajes XML en Technorati | Guarda Interfases de usuario ricas basadas en lenguajes XML en Yahoo | Guarda Interfases de usuario ricas basadas en lenguajes XML en Google Bookmarks | Envía Interfases de usuario ricas basadas en lenguajes XML a Furl | Envía Interfases de usuario ricas basadas en lenguajes XML a Newsvine | Guarda Interfases de usuario ricas basadas en lenguajes XML en Ma.gnolia.com | Envía Interfases de usuario ricas basadas en lenguajes XML a Reddit | Envía Interfases de usuario ricas basadas en lenguajes XML a BarraPunto | Envía Interfases de usuario ricas basadas en lenguajes XML a Digg | Envía un Meme sobre Interfases de usuario ricas basadas en lenguajes XML | Guarda Interfases de usuario ricas basadas en lenguajes XML en del.icio.us | Envía Interfases de usuario ricas basadas en lenguajes XML a Fresqui | Menea Interfases de usuario ricas basadas en lenguajes XML en Menéame

Contenidos relacionados: Google, Live Search, Tafiti, Yahoo

Lecturas recomendadas


Suscripciones

Impulsado por FeedBurner
Impulsado por Feedburner
Suscríbete a ChicoDotNet utilizando Google Suscríbete a ChicoDotNet utilizando netomat Hub Suscríbete a ChicoDotNet utilizando Plusmo Suscríbete a ChicoDotNet utilizando Newsburst Suscríbete a ChicoDotNet utilizando Attensa Suscríbete a ChicoDotNet utilizando My Yahoo Suscríbete a ChicoDotNet utilizando NewsGator Suscríbete a ChicoDotNet utilizando netvibes Suscríbete a ChicoDotNet utilizando The Free Dictionary Suscríbete a ChicoDotNet utilizando Bitty Suscríbete a ChicoDotNet utilizando Excite MIX Suscríbete a ChicoDotNet utilizando Pluck Suscríbete a ChicoDotNet utilizando Webwag Suscríbete a ChicoDotNet utilizando podnova Suscríbete a ChicoDotNet utilizando ZapTXT Suscríbete a ChicoDotNet utilizando NewsAlloy Suscríbete a ChicoDotNet utilizando flurry Suscríbete a ChicoDotNet utilizando Pageflakes Suscríbete a ChicoDotNet utilizando ODEO Suscríbete a ChicoDotNet utilizando PodcastReady Suscríbete a ChicoDotNet utilizando Bloglines Suscríbete a ChicoDotNet utilizando My AOL Suscríbete a ChicoDotNet utilizando Rojo

Portal de contenidos impulsado por Blogger | Ejemplos de código impulsados por ASP .NET 2.0 | Sindicación Atom válida | Sindicación RSS 2.0 válida | ChicoDotNet es un portal impulsado por Aynkia Desarrollo: Aplicaciones Web, Windows y Smart Client | ©© Algunos derechos reservados 2006 Aynkia Systems Consultores. El contenido de este sitio Web está regulado por una licencia Creative Commons Attribution 2.5 License

Ranking de ChicoDotNet en Blogalaxia

Obtén vistas previas utilizando Snap.com