Windows 8 para desarrolladores

La nueva versión de Windows 8, así como su interfaz Metro, representan un cambio bastante radical a la hora de desarrollar aplicaciones. Microsoft ha apostado por dar cierta uniformidad en todas las aplicaciones, de tal manera que tanto el usuario como el desarrollador se sientan cómodos a la hora de crear y consumir contenidos. Si bien es cierto que se puede seguir trabajando como hasta la fecha, creando aplicaciones con nuestras diferentes ventanas y nuestro marco (véase Photoshop), las nuevas herramientas dan la oportunidad de crear un nuevo tipo de aplicaciones completamente diferente, y más parecido a las aplicaciones que se pueden encontrar en un tablet.

¿El café, solo o con azúcar?

La principal ventaja introducida en la nueva API de Windows, llamada WinRT es la posibilidad de aprovechar cualquiera que fuera nuestro background técnico. Por lo tanto, si viene de .net se puede usar usar C# y Visual Basic para el código de la aplicación, y XAML (eXtensible Application Markup Language), por otro lado si viene de programar aplicaciones Win32 de la vieja escuela, se podrá reutilizar conocimiento de C/C++ usando también XAML para la maquinación, finalmente si el origen es desarrollo web todo el Javascript y HTML/CSS aprendido permitirá, también, crear aplicaciones nativas para Metro. Para ello se encuentran disponibles con las herramientas de desarrollo clásicas de la plataforma, que son Visual Studio Express y además de contar con una versión especial de Expression Blend para la parte gráfica.

¿Qué podemos aprovechar?

Una de las cosas que se ha intentado con la interfaz Metro ha sido eliminar botones e interacción secundaria de la ventana principal, y dejar toda la pantalla para los contenidos, delegando esas funciones a las Charms y a la Application Bar, de fácil acceso desplazando el dedo a las esquinas de la aplicación (si estamos usando un Tablet) o bien con atajos de teclado y esquinas de la pantalla si somos usuarios de teclado y ratón.

Con ratón:
  • Las charms se muestran desplazando el cursor a la esquina inferior derecha.
  • La application bar se muestra haciendo click derecho en cualquier parte de la aplicación.
Con teclado:
  • Las charms se muestran usando Win + Z
  • La application bar se muestra usando Win + C

Charms

Una de las principales novedades de Windows 8 es la introducción de las Charms, barras de herramientas que vienen a ser menús contextuales, manteniendo la interfaz consistente. En la versión incluida en la developer preview se incluyen las siguientes:

  • Search: Buscar en nuestra aplicación, en otras aplicaciones y en el ordenador en general.
  • Share: Compartir contenidos de nuestra aplicación con otras aplicaciones.
  • Start: Volver al menú inicio.
  • Devices: Conectar con otras aplicaciones o dispositivos, como pudiera ser una impresora.
  • Settings: Configurar las opciones de nuestra aplicación, así como mostrar las opciones de apagado, Notificaciones, WiFi, sonido o brillo de la pantalla.

Application Bar

El menú contextual se ha desplazado a los bordes superior e inferior, de tal manera que se puede acceder a la información contextual de nuestra aplicación. La información y la apariencia de esta barra es personalizable, aunque lo que se recomienda es que los iconos se sitúen a ambos lados de la pantalla en vez de centrarlos. Como se está enfocando el objetivo principal a usuarios de tablet, la posición natural será con ambas manos a los lados de la pantalla, así que querremos tener las opciones accesibles de manera cómoda.

Detalle de la App Bar de IE10

Esta separación de responsabilidades permite delegar varias funciones de nuestra aplicación, como la selección de opciones y la búsqueda al propio sistema operativo. De cara al usuario, es una ventaja cerrar una aplicación, abrir otra completamente diferente y saber que sus opciones, la búsqueda y la manera de compartir con otras aplicaciones será exactamente la misma.

Activar el soporte de Charms para nuestra aplicación

Si desarrolla en Visual Studio 11 una aplicación Metro, se encontrará un nuevo tipo de fichero llamado package.appxmanifest. Al abrir el fichero encontrará una ventana muy similar a la de opciones del proyecto, en la que se pueden seleccionar:

  • Nombre, descripción, logos, pantallas de carga y orientación por defecto para nuestra aplicación.
  • Capacidades: ¿A qué capacidades del sistema o dispositivos necesita acceder nuestra aplicación? Como ejemplo podemos usar GPS, webcam, o acceso al chup NFC que incorporen los tablets. Hay que tener en cuenta que el usuario puede bloquear estas capacidades desde el menú preferencias.
  • Declaraciones: Podemos declarar que nuestra aplicación posee capacidades para búsqueda, o como destino para compartir o enviar.

Implementar el soporte de Charms en nuestra aplicación

Una vez activado el soporte, Windows 8 sabrá que la aplicación puede responder a las diferentes acciones, ahora falta implementar dicho comportamiento. Para ello tenemos a nuestra disposición en Visual Studio varias plantillas que harán la tarea más llevadera, simplemente agregar la página a nuestro proyecto y tendremos la funcionalidad implementada, solamente faltaría agregar la lógica relativa a nuestra aplicación, que es algo que, de momento, Visual Studio no hace ;)

Implementar Application Bar

La application Bar se implementa como un control adicional, es un contenedor en el caso de los proyectos javascript (usando HTML para el maquetado), y si se usa XAML veremos que es un control. Se sitúan normalmente o bien en el fichero App.xaml (para un soporte global) o bien en las diferentes páginas, si queremos tener una App Bar diferente para cada sección. 

Ejemplos

En la Windows Developer Preview se pueden encontrar varios ejemplos de uso de estas opciones, merece la pena echarle un vistazo y mirar un poco más allá del contenido de las aplicaciones que se incluyen por defecto.

Más información: http://dev.windows.com

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s