Etiquetado: WPF

Caché HTTP de cliente en C# (1 de 4): aplicaciones de escritorio

Hoy en día es muy habitual utilizar contenido web en nuestras aplicaciones y eso penaliza el rendimiento. Para mejorarlo vamos a tener que almacenar en caché dicho contenido. Hacerlo bien no es difícil, pero es necesario conocer cómo funcionan los mecanismos de caché en la web y buscar dentro de la documentación de .Net cómo podemos aprovechar estos.

Upload / Download
Upload / Download por johntrainor, en Flickr

Como no soy el primero en tener la necesidad, existen algunas entradas en StackOverflow sobre el tema. Parece que la solución propuesta funciona bien, pero todas los que he visto se olvidan de algunos puntos importantes, como por ejemplo pedir al servidor si hay una versión actualizada del archivo, añadir técnicas de scavenging para que el contenido descargado caduque, etc. Además se olvidan de que el sistema operativo ya sabe cachear y es un poco raro que tengamos que volver a programar el caché que tan bien hacen los navegadores.

Te recomiendo leer el artículo hasta el final, pero si tienes mucha prisa puedes descargar el código de ejemplo en GitHub.

Sigue leyendo

Anuncios

SUR 40

Aprovechando que estaba de viaje por Redmond estos días he hecho una breve visita al equipo de desarrollo de Surface. Me ha recibido Luis Cabrera, al que debo agradecerle que me haya atendido pues me presenté casi por sorpresa y como imaginaréis están en un momento de gran cantidad de trabajo.

He podido ver y tocar la nueva SUR40, un dispositivo impresionante fabricado por Samsung, con el que se da un gran paso adelante, pues se han resuelto los mayores problemas que había en la primera versión, además de la reducción de precio:

  • A nivel de hardware: peso, tamaño y orientación ya no suponen ningún problema, gracias a Pixelsense ya no son necesarios ni proyectores ni cámaras, cada píxel es a su vez un sensor que le permite al dispositivo ver lo que pongamos sobre él. Esto ha reducido el grosor de la mesa que ahora también es posible colgar en la pared y funcionar en modo kiosco. Además se ha incrementado la resolución hemos de tener en cuenta que es tecnología LCD y por lo tanto muy superior a la calidad de retroproyección que teníamos en Surface 1.0.
  • Software: funciona sobre Windows7, utiliza un SDK común para el resto de dispositivos “Touch” y el interface tiene bastantes novedades que lo hacen mucho más amigable, por ejemplo:
    • Algunas acciones que podían ser confusas como la de cerrar una aplicación ahora son más explícitas y se evita la confusión o el cierre por error.
    • El interface de usuario contiene grandes mejoras, muy parecido al concepto Metro de WP7, aumentando la importancia del contenido sobre el contenedor.
    • Están trabajando en controles que nos facilitarán mucho el trabajo, tengo ganas de probar el SDK ya 😀

Aparte de las novedades, para los que ya habéis hecho alguna aplicación en Surface os daré una buena noticia, las aplicaciones que ya teníamos hechas para Surface 1.0 serán muy fáciles de migrar. Nosotros ya estuvimos probando dcon el SDK 1.5 y no tuvimos ningún problema para migrar las aplicaciones.  Parece ser que para 2.0 la base sigue siendo muy parecida así que podremos aprovechar no sólo el know how sino el código también.

Le conté algunos de nuestros proyectos en el MICTT enfocados a turismo y a integrar las diferentes tecnologías que tenemos como Kinect y WP7 junto a Surface, así él me ha dado su visión de cómo usando Surface + Kinect se pueden crear experiencias muy ricas para el usuario, demostrándome una vez más que NUI va mucho más allá de “touch” y que estamos en un momento completamente revolucionario.

Al día siguiente anunciaron el SDK de Kinect en Channel 9 así que ya tenemos con qué ponernos a jugar durante una buena temporada.

Fue una charla corta pero muy interesante, espero en breve dar una buena sesión sobre NUI en el MICTT como introducción a un gran evento que haremos después de verano.

Wikipedia Explorer ahora sobre Azure

DotNet Solutions ha actualizado su Wikipedia Explorer que ahora utiliza la tecnología de Windows Azure para convertir la base de datos de la Wikipedia a formato XML/XAML y así acelerar la aplicación que antes convertía los datos al vuelo.

Wikipedia Explorer es una aplicación WPF que proporciona una nueva forma de navegar por la wikipedia, visualizando las relaciones entre documentos.

Gracias a la plataforma Windows Azure han podido reducir el tiempo de proceso para la conversión de la base de datos de 6 meses a 5 días.
La aplicación está disponible en modo ClickOnce aquí.

Silverlight 2.0

Scott Guthrie acaba de anunciar en su blog (entre otras muchas cosas) el lanzamiento de la primera beta de Silverlight 2.0 a principios del año que viene.
El “truco” reside en que estaban añadiendo tantas características nuevas a 1.1 que han decidido cambiarle el número de versión.
Las mejoras son: uso de un subconjunto de las características del WPF UI compatibles con éste, más de 20 controles ricos que incluyen textbox, checkbox, radiobutton, grid, tabcontrol, progressbar y un largo etcétera, manejo en red de REST, POX, RSS, and WS* y conexiones cross-domain (por fin!), además de las funcionalidades de las librerías base de .Net (colecciones, generics,…) e incluso LINQ to XML.
¡Ya no tendremos excusa para no usarlo!

Acropolis o cómo programar a golpe de click

Siguiendo los pasos de Composite UI Application Block (CAB) y Smart Client Software Factory llega una nueva plataforma con conjunto de patrones y herramientas para facilitar el desarrollo modular de aplicaciones Smart Client. Con Orcas y Acropolis el desarrollo visual de aplicaciones da un paso adelante, el día de mañana podremos definir toda la aplicación en el diseñador.

Glenn Block explica en su blog cómo funciona e incluso ha escrito un pequeño faq.

La web del proyecto está en http://www.windowsclient.net/Acropolis. Encontraréis un vídeo de introducción para que se os vaya haciendo la boca agua.

Como leí en un viejo libro sobre Delphi, la informática cada vez se parece más a la fontanería.