110 likes | 236 Views
Tema 0: Aplicaciones de Cliente Inteligente Carlos Cobos Miguel Ángel Niño Adaptado de Smart Client Development in .NET Peter Ty Developer Evangelist Developer and Platform Group Microsoft Hong Kong. Agenda. Definición Múltiples Hilos Capacidad fuera de línea Auto actualización.
E N D
Tema 0: Aplicaciones de Cliente Inteligente Carlos Cobos Miguel Ángel Niño Adaptado de Smart Client Development in .NET Peter Ty Developer Evangelist Developer and Platform Group Microsoft Hong Kong
Agenda • Definición • Múltiples Hilos • Capacidad fuera de línea • Auto actualización
Servicios Web y soporte Offline/Online Adaptabilidad a dispositivos Huella Pesada Amplia llegada Difícil Despliegue Dependencia de la red Experiencia de Usuario Rica Productividad del desarrollador Experiencia de Usuario Pobre Fácil Gestión del Cambio y Despliegue Infierno de empaquetado Difícil desarrollar un interfaz de usuario rico Desarrollo sencillo Receptivo
WS WS WS Principales atributos de las Aplicaciones de Cliente Inteligente • Usa el poder de procesamiento local • Consume servicios Web XML • Soporta escenarios en y fuera de línea • Adaptable al dispositivo huésped • Desarrollo centralizado y modelo de actualización
Usar el poder de procesamiento local - Hilos • Incrementar la receptividad de la aplicación • Ejecutar tareas en segundo plano • Evitar el bloqueo de la interfaz del usuario • Maximizar el uso del procesador • Ejecutar varias tareas a la vez • Manejar operaciones de larga duración • Realizar cálculos complejos • Realizar tareas de rutina, como consultar la base de datos
Implementación de Hilos • Actualizar la IU desde un hilo secundario • Necesidad de lanzar un hilo secundario para ejecutar una tarea • La tarea necesita actualizar la IU • Problema: Sólo el hilo primario puede actualizar directamente la interfaz • Solución: Uso de Invoke • Ejecución asincrónica usando Delegados • Revisar los hilos a través de IsCompleted • Usar una función de Callback
Soportar escenarios en y fuera de línea • Requisitos en la aplicación • Debe ser capaz de detectar la presencia o ausencia de la conexión de red • Debe ser capaz de almacenar (cache) datos localmente, permitiendo a la aplicación funcionar normalmente (modo en línea) en modo fuera de línea • Debe ser capaz de sincronizar el estado y/o los datos del cliente al servidor cuando la red este nuevamente disponible
Offline Application BlockCaracterísticas claves • Diseñado para trabajar en un “Service Oriented Environment” usando un enfoque de comunicación basado en mensajes • Provee un modelo de programación consistente para el desarrollo de aplicaciones que trabajan en y fuera de línea • Provee funcionalidad de detección del estado de la conexión, manejo de colas y estrategias de almacenamiento local (cache) • Pensado con componentes débilmente acoplados que dan la posibilidad de manejar diferentes esquemas de despliegue
Descargar elOffline Application Block http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag/html/offline.asp or http://www.microsoft.com/downloads/details.aspx?FamilyId=BD864EB5-56B3-43A5-A964-6F23566DF0AB&displaylang=en
Aplicaciones auto actualizables • Necesidad de detectar, validar y descargar actualizaciones de la aplicación desde un punto centralizado • Necesidad de realizar tareas de configuración post-despliegue y controlar el proceso de actualización • CLIC ONE
Office 2003 como aplicación inteligente - Smart Documents • Soluciones inteligentes para Word, Excel, … • Simplifica el desarrollo y la actualización • Despliegue basado en documentos • Gestión centralizada