Juanma Santoyo

En ocasiones me llaman friki

Introducción al desarrollo sobre Microsoft Surface

| 4 Comentarios

Microsoft Surface (Surface a partir de ahora) es sin duda un desafío para los programadores. Acostumbrados a entornos gráficos basados en respuestas al ratón, una interfaz de usuario multitáctil nos plantea un nuevo reto a la mayoría de nosotros.

En este artículo, pretendo dos cosas: por una parte, informarte de qué necesitas para comenzar a desarrollar y cómo obtenerlo. Por otra parte, facilitarte esa documentación que a todos nos va tan bien para empezar con una nueva tecnología. Así que vamos a ello.

Lo primero que debes saber, es que una aplicación para Surface no es más que una aplicación WPF o XNA. Por si no lo sabías, WPF es un entorno muy potente para desarrollar aplicaciones de escritorio orientadas a los nuevos entornos gráficos de Windows Vista y Windows 7. XNA es un entorno para desarrollo de videojuegos también facilitado por Microsoft. Si has jugado con la Xbox 360 te habrás preguntado ¿de dónde salen los tantísimos juegos del bazar? Pues bien, la mayoría están desarrollados por compañías independientes con XNA.

Obviamente, optar por WPF o XNA dependerá de nuestra aplicación. Si necesitamos un motor rico en controles de usuario, optaríamos por WPF. Si necesitamos un motor potente en la renderización de gráficos 3D, optaríamos por XNA. Depende de las necesidades de nuestra aplicación.

En este artículo, pretendo dos cosas: por una parte, informarte de qué necesitas para comenzar a desarrollar y cómo obtenerlo. Por otra parte, facilitarte esa documentación que a todos nos va tan bien para empezar con una nueva tecnología. Así que vamos a ello.

Lo primero que debes saber, es que una aplicación para Surface no es más que una aplicación WPF o XNA. Por si no lo sabías, WPF es un entorno muy potente para desarrollar aplicaciones de escritorio orientadas a los nuevos entornos gráficos de Windows Vista y Windows 7. XNA es un entorno para desarrollo de videojuegos también facilitado por Microsoft. Si has jugado con la Xbox 360 te habrás preguntado ¿de dónde salen los tantísimos juegos del bazar? Pues bien, la mayoría están desarrollados por compañías independientes con XNA.Obviamente, optar por WPF o XNA dependerá de nuestra aplicación. Si necesitamos un motor rico en controles de usuario, optaríamos por WPF. Si necesitamos un motor potente en la renderización de gráficos 3D, optaríamos por XNA. Depende de las necesidades de nuestra aplicación.

Instalación del entorno de desarrollo

Para empezar, un detalle importante es nuestro sistema operativo: El SDK de Surface no funcionará en Windows XP, necesitaremos Windows Vista o superior.

Bien, empecemos a instalar los programas necesarios. Antes de empezar, no estaría mal asegurarse de que tenemos instalada la última versión del .Net Framework (3.5 SP1 en estos momentos).

La primera herramienta que debemos conseguir es un Visual Studio. Como sabrás, Visual Studio es un IDE desarrollado por Microsoft y orientado al desarrollo de aplicaciones en .Net. Si no lo tienes y eres estudiante universitario, puedes hacerte con una licencia de estudiante. Esta licencia es totalmente gratuita y sólo necesitaras proporcionar tu identificación como estudiante. Puedes obtenerla aquí: Microsoft Visual Studio.

Cuando tengamos el Visual Studio instalado, deberemos instalar el Framework de XNA (independientemente de que queramos desarrollar con WPF). Lo podemos obtener de aquí: Microsoft XNA Framework.

Finalmente, instalamos el SDK de Surface. Lo encontramos aquí: Microsoft Surface SDK.

Con este software instalado, ya estamos listos para abrir el Visual Studio y crear un nuevo proyecto de Surface, no sin antes ejecutar el emulador de Surface que viene con el SDK. De esta forma, al depurar proyectos desde Visual Studio, se ejecutarán en el emulador.

Debes saber, además; que si conectas más de un ratón por USB el emulador los considerará dedos diferentes. ¡Eso es, soporte multitáctil en tu ordenador!.

Recursos de documentación para empezar

Ya tenemos todo lo necesario para empezar a desarrollar aplicaciones de Surface. Ahora, sólo nos falta algo de documentación que nos oriente para empezar a hacer cosas.

Developing for Microsoft Surface

Pero ¿dónde nos estamos metiendo realmente? En esta conferencia de Microsoft se ilustra cómo es el desarrollo de aplicaciones en Surface.
Developing for Microsoft Surface.

Hola Mundo Surface con WPF

Siguiendo en la línea anterior, este artículo me ha aclarado algunos conceptos generales más a la hora de afrontar el desarrollo con Surface. Interesante sobre todo porque habla algo de los nuevos eventos de contacto de Surface.
Hola Mundo Surface con WPF.

MSDN .Net Framework Developer Center

Pero vamos, ya está bien de conceptos generales, ¿verdad? Seguro que ya tienes ganas de meterle mano a Surface.

En MSDN nos facilitan información y ejemplos varios para empezar a programar algunas cosas. ¡Suerte!.
MSDN .Net Framework Developer Center.

Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInEmail this to someone

4 Comments

  1. Hola!

    buen articulo, a mi me interesa demasiado este producto, estoy tratando de desarrollar aplicaciones, ya que por medio de la empresa donde laboro adquiriran una surface, algun consejo? no se si sepan de algun sitio donde haya ejemplos de aplicaciones ya realizadas para tener mejor idea de como desarrollar.

    Gracias por esta aportacion, resulto muy interesante

    • Pues de momento no tengo mucho que aconsejar, ya que yo mismo sigo iniciándome en esta tecnología.

      En los próximos días debe llegar a mis manos un escrito sobre “buenas prácticas” en lo respectivo a la interactividad con interfaces táctiles, que pondré por aquí.

      Sobre ejemplos, al instalar el SDK de surface vienen algunas muestras sencillas de los diferentes controles de usuario que se proveen, ese puede ser un buen sitio para empezar. Además, en el artículo hay un link a msdn, el sitio más completo en ese sentido que he encontrado por el momento.

      Por no mencionar que en pocos días publicaré un pequeño ejemplo de ScatterViews con XAML y con C# (los ScatterViews son objetos que aportan la capacidad de reescalar, rotar y recolocar elementos).

      Probablemente en las próximas semanas publique varios artículos sobre Surface.

  2. Muchas gracias, estare al pendiente

    he consultado la documentacion que trae el SDK y es buena, pero el que no es muy bueno soy yo, al parecer, no entendi muy bien lo de las clases y en donde tengo que introducir el código, como en la ayuda del How i do, hay 4 “items” para agregar ya teniendo el proyecto abierto (surface user control, surface window, Tag Visualization y surface custom)y al parecer no puedes introducir en cualquier pantalla el codigo… en fin

    Esperare cuando agregues mas informacion, te agradezco por contestar, buena tarde!!!

  3. Te sugiero que esperes a mis próximos artículos sobre Surface. Probablemente el próximo de ellos te aclare varias coas.

    Un saludo.

Deja un comentario

Los campos obligatorios están marcados con *.