Texto escrito por Andrew Byrne, Desarrollador Senior de Contenido en el Equipo de Desarrollo de Contenido de Windows Phone.

- Adam Denning

Les comparto algunas de las herramientas que usé para construir y enviar aplicaciones de calidad. Los llevaré de la mano a través de cada fase del proceso de desarrollo de mi aplicación y también describo las diversas herramientas que utilicé para cada una. Las principales secciones de este artículo incluyen lo siguiente:

  • Inventa y planifica tu aplicación.
  • Diseña la aplicación.
  • Codifica la aplicación.
  • Prueba tu aplicación.
  • Publica la aplicación y bríndale soporte técnico a los usuarios.

Inventa y planifica tu aplicación

Una gran aplicación comienza con una gran idea. Quizá sientes algún malestar o hay un detalle de tu teléfono que te enoja, o tal vez observas un vacío en el mercado, o bien, tal vez pienses en migrar tu aplicación desde otra plataforma. Por el motivo que sea, si quieres desarrollar una aplicación para Windows Phone, escribe tus ideas, guárdalas; realiza un boceto de tus diseños y haz un plan.

El comienzo de la mayoría de las aplicaciones que invento y su planeación, lo hago en OneNote. Me resulta fácil organizar cada una de las ideas de mis proyectos en secciones con apoyo de este software. Una o más páginas son tabuladas en conjunto para cada fase de desarrollo. Esto lo almaceno en SkyDrive para que pueda acceder a dicha información en donde quiera y cuando lo desee. Con un bolígrafo para tableta también puedo bocetar en páginas en lugar de utilizar papel, así salvo algunos árboles durante el proceso. Conforme avanzo en una idea que deseo tomar en serio para un proyecto y que considero convertirla en una aplicación, busco alternativas sofisticadas para capturar diseños.

Diseña tu aplicación

Mientras que una gran idea es el génesis de una aplicación, el éxito de la misma casi siempre es determinado por la atracción que siente el usuario por ésta. Hay bastante de dónde elegir en la Tienda para cada categoría de aplicaciones. Tu aplicación debe ser agradable la vista y fácil de utilizar.

La plantilla de diseño en el Centro de Desarrollo es en donde encontrarás todos los aspectos necesarios para diseñar una aplicación para Windows Phone. Te lleva a través de principios del diseño, estructura de aplicaciones y modelos de navegación y mucho, mucho más.

Una etapa inicial en mi desarrollo de aplicaciones es la creación de prototipos. Tomo Sketch Template, imprimo unas pocas hojas y comienzo a navegar a través de las pantallas de la aplicación que quiero crear, mientras pienso en el flujo entre páginas. Porque soy un programador apasionado, recurro de inmediato al editor de códigos y genero mi primer prototipo.

La presencia de algunos feos y nada intuitivos iconos en la barra de la aplicación pueden ser muy desagradables. Así que, por lo general, busco algunos iconos gratuitos. Si cuentas con alguna copia instalada de Visual Studio, encontrarás un conjunto de iconos para tu aplicación dentro de esta ubicación en tu ordenador:

Microsoft SDKs\Windows Phone\v8.0\Icons

Bing también es una buena fuente, nuestros amigos en geekchamp han hecho un gran trabajo en compilar una lista de conjuntos de iconos de Windows Phone: http://www.geekchamp.com/marketplace/browse?category=icons

Aquí hay una lista adicional de recursos de diseño para Windows Phone.

Codifica tu aplicación

Visual Studio y Blend son las herramientas principales que utilizo para el desarrollo. Aquí están algunas otras herramientas, complementos y atributos que me ayudan a programar mis aplicaciones.

Administra tu aplicación con Team Foundation Service

clip_image002

Conforme crece tu experiencia en el desarrollo de aplicaciones, tendrás más y más proyectos para programar y querrás administrar este código, con todo y la historia de cómo ha cambiado durante el tiempo. El control de origen es el término dado al proceso de gestión de cambios a tu código. Hay muchos productos disponibles que te pueden ayudar con esto, todos ellos proveen funcionalidad para gestionar las revisiones que realizas a tu código e involucran el historial de cambios, así como los cambios en sí mismos en un repositorio.

Cuando comencé mi desarrollo de aplicación para Windows Phone, utilicé una solución de código abierto para gestionar mi código, después migré a Team Foundation Service, es una versión online de Team Foundation Server (TFS), un producto de Microsoft que puede manejar la fuente de control, al igual que muchos otros aspectos de administración relacionados con el ciclo de vida de la aplicación. Al trasladar mi fuente de control hacia la nube, soy cauteloso de que mi código y revisiones estén respaldadas y que tendré la posibilidad de acceder a todos mis proyectos desde cualquier lugar, a través de la interfaz web. Team Foundation Services es gratis para hasta cinco usuarios y también se integra de manera armónica con Visual Studio.

Puedes aprender más en: http://tfs.visualstudio.com.

Como mencioné con anterioridad acerca de mi planeación en el desarrollo de aplicaciones en OneNote, ahora que uso Team Foundation Service, tengo la opción de utilizar sus atributos para monitorear el progreso del desarrollo de mi aplicación.

‘Tropicaliza’ con el apoyo del Kit de Herramientas Multilingüe para Aplicaciones.

Una buena manera de ampliar el alcance de tu aplicación es a través de la adición de más idiomas, como se menciona en el artículo más reciente de Bernardo Zamora, Consejos para tropicalizar y obtener beneficios económicos con tu aplicación para usuarios de Windows Phone. Dan Zucker también nos proporcionó dos excelentes textos sobre este (parte 1, parte 2). Una vez armado con este conocimiento y con el Kit de Herramientas Multilingüe para Apps (MAT, por sus siglas en inglés), fui capaz de añadir francés, alemán y español en una de mis aplicaciones en poco tiempo. Mi plan es incrementar el número de idiomas y actualizar más de mis aplicaciones para que tengan un alcance global. Así es como se ve el Editor Multilingüe de MAT.

clip_image004

El Kit de Herramientas Multilingüe para Aplicaciones se instala como un instrumento independiente y también se integra con Visual Studio. Un atributo extraordinario ofrece la capacidad de crear cuerdas pseudo-localizadas que pueden emplearse para determinar si el espacio de los elementos de la interfaz de usuario (UI, por sus siglas en inglés) es razonable, antes de que intentes localizar un lenguaje específico. Puedes usar la herramienta para que funcione la traducción automática en tu aplicación, o bien, trabajar con un proveedor de localización para mejorar las traducciones. Consulta los siguientes links para más información:

Consejos para localizar aplicaciones de Windows Phone – Parte 2

Extensión para el Kit de Aplicaciones Multilingüe para Visual Studio.

Gestiona bibliotecas y herramientas a través de la Consola de Administración de Paquetes

Otra herramienta que deseo mencionar y que se relaciona con la codificación, es la Consola de Administración de Paquetes. Este útil instrumento creado para Visual Studio interactúa con NuGet para gestionar bibliotecas y herramientas. Por ejemplo, si deseo usar el poderoso Kit de Herramientas de Windows Phone en mi aplicación, sólo debo abrir la Consola de Administración de Paquetes y hacer lo siguiente:

clip_image006

¡Añadir, remover y actualizar las bibliotecas y herramientas nunca había sido tan sencillo!

Más recursos para herramientas de codificación

Quiero compartir más recursos que también son útiles para cualquiera que programe para Windows Phone. El primero es nuestro conjunto de muestras, que son un gran lugar para comenzar cuando estás en busca de un atributo en particular para tu aplicación. Mi equipo ha enviado más de 80 ejemplos a la Galería de Códigos, y encontrarás muchas más por parte de la comunidad también.

El ecosistema de desarrolladores de Windows Phone crece de manera rápida, al igual que el número de espectaculares aplicaciones, marcos de trabajo y otros recursos. Enlistamos algunas herramientas y recursos de terceros que podrías encontrar útiles:

Descargas para desarrolladores de Windows Phone

Recursos para socios

Prueba tu aplicación

Dijimos que una gran idea es el génesis de una gran aplicación, y el diseño ayudará a que esté en la Tienda. La calidad de la aplicación te previene de reseñas negativas y promueve tu reputación como un desarrollador al que le gusta hacer bien las cosas. Así que, mientras programo, hago pruebas y vuelvo a probar después. Realizo mis pruebas en el emulador de Windows Phone, en dispositivos y también efectúo pruebas beta. Utilizo las siguientes herramientas durante el proceso.

Emulador de Windows Phone

clip_image008

El emulador es una gran manera de iniciar con las pruebas de tu aplicación. Implementar tu aplicación y ejecutarla en el emulador es rápido. Funciona en todas las resoluciones del teléfono y la depuración se efectúa sin problema. Puedes cambiar el idioma en la configuración del emulador para ver tu aplicación en uno de los idiomas a los que tradujiste. Ampliar la barra de menú del emulador, localizada en el costado, muestra un conjunto adicional de herramientas que te apoyan a probar tu aplicación en otros escenarios. También hay una herramienta de Captura de Pantalla integrada, lo cual es útil cuando hay que compilar más capturas de pantalla para enviar la aplicación al Centro de Desarrollo.

Yo paso mucho tiempo en el emulador, pero nunca pierdo de vista el hecho de que esto aún es un emulador que funciona en un hardware más poderoso que en los dispositivos en los cuales se ejecutaría en realidad mi aplicación. Así que, cuando considero que algo está listo para probarlo, lo instalo en un teléfono real. Para una perspectiva de cómo implementar tu aplicación de manera directa desde Visual Studio, o con la Herramienta de Implementación de Aplicaciones, consulta Cómo implementar y ejecutar una aplicación de Windows Phone.

Encontrarás todos los detalles en nuestros documentos del Emulador de Windows Phone.

¿Dónde conseguí la apariencia elegante para el emulador? Utilicé el Emulador Skin Switcher de WP8 disponible en CodePlex. Algunas herramientas pueden ser divertidas y también útiles.

Visión de rayos X para almacenamiento aislado

Si tu aplicación almacena datos, dicha información está alojada en su almacenamiento aislado, lo cual significa que el almacenamiento del dispositivo está aislado para cada aplicación. Sin embargo, si quieres ver los datos de la aplicación, ahí es cuando entra en acción la herramienta. Por ejemplo, si escribes alguna configuración o ajustas los datos en un archivo que está en el almacenamiento aislado, serás capaz de examinar ese elemento. La SDK de Windows Phone tiene una herramienta con una línea de comandos, llamada ISETool.exe, que puedes utilizar para navegar por el almacenamiento, así como modificarlo. Puedes leer más al respecto en Cómo utilizar la herramienta del Explorador de Almacenamiento Aislado para Windows Phone.

Me considero una persona más visual, así que me gustan las herramientas que me permiten navegar por el almacenamiento. Otras se han fortalecido con algunas herramientas gratuitas que han resultado grandiosas, y puedo notar que todas las herramientas trabajan con la ejecución de tu aplicación en el emulador, o bien, en un dispositivo registrado para desarrolladores.

clip_image010

El Explorador de Almacenamiento Aislado es una extensión gratuita de Visual Studio que te permite navegar el almacenamiento de tu aplicación. Puedes importar y exportar archivos desde y hacia un almacenamiento aislado. Sin embargo, esto no funciona con Visual Studio Express para Windows Phone.

Simula la vida real con el Tablero de Simulación

Si mi aplicación utiliza conexión de red, quiero asegurarme que sé cómo se manejarán los problemas relacionados con el tipo de conexión que puedan tener los usuarios. Ingresa en el Tablero de Simulación para Windows Phone. Esta es una ventana de herramientas dentro de Visual Studio que puedes utilizar para probar tu aplicación con una precaria conexión a la red, prueba lo que sucede cuando la pantalla de bloqueo baja u ocurre una interrupción.

clip_image012

Les daré una breve introducción a algunas de las herramientas que uso para probar mis aplicaciones. Craig Horsfield escribió tres excelentes artículos (parte 1, parte 2, parte 3), acerca de cómo probar tu aplicación de Windows Phone. Pratap Lakshman nos compartió una serie entera de textos acerca del Perfilamiento de memoria para el rendimiento de tu aplicación, los cuales te invito a (re)leer.

Prueba Beta, mejor conocida como “Llama a un amigo”

La prueba Beta de aplicaciones significa el proceso de cargar tu aplicación en la Tienda, de tal forma que permanece oculta para el público en general, pero accesible para la gente a la que has designado como experimentadores beta. En los inicios de Windows Phone, era renuente en subir mis aplicaciones para las pruebas beta porque el proceso era un poco complicado. En meses recientes, dicho proceso ha mejorado bastante y las pruebas beta ahora son parte de las actividades que realizo antes de enviar y publicar una aplicación. Los tiempos para cambios han mejorado y ahora es posible actualizar la aplicación y la lista de examinadores beta en cualquier momento. He encontrado numerosos problemas durante el camino, sin considerar la molestia del público en general cuando ellos localizan estas dificultades por mí.

Para mayor información, ve Prueba tu aplicación y tus productos dentro de una aplicación en modo beta. Recuerda agradecer a aquellos examinadores por su duro trabajo con el que hacen que tu aplicación sea la mejor en todos los aspectos.

Kit de Prueba de Windows Phone Store

Otra herramienta que es invaluable y que te asegura de que tu aplicación pase a la etapa de carga, es el Kit de Prueba de Windows Phone Store. Aquí una captura de pantalla, en caso de que nunca lo hayas visto en acción.

clip_image014

Esta herramienta, disponible en Visual Studio bajo el menú Project, es un conjunto de pruebas automatizadas y manuales. Asegúrate de crear una versión para publicar de tu aplicación y ejecuta el kit. Esto te indicará qué tan lista está tu aplicación para ser publicada. Por ejemplo, las pruebas automatizadas evalúan las características de tu aplicación, tales como su tamaño, presencia y la dimensión de sus imágenes. Veo al Análisis Inicial de Aplicaciones de Windows Phone invaluable, ya que puedes utilizarlo para perfilar tu aplicación y ver cómo responde, observar el desempeño y rastro de la memoria, así como otros aspectos.

Publica tu aplicación y brinda soporte a los usuarios

En esta etapa del proceso de desarrollo de la aplicación, comienzo a cambiar mi enfoque en el Dev Center, las herramientas de éste me ayudan a implementar mi aplicación en la tienda, monitorearla, monetizar mis esfuerzos si decido que se pague por mi aplicación y añadir la posibilidad de que los usuarios hagan compras o incluyan sus anuncios en la aplicación.

Soporte para los usuarios

Me aseguro de que los usuarios tengan una manera de contactarme, así que reviso lo que hay en mis cuentas de email y le respondo a quienes me envían sus opiniones. Incluso, he generado una dirección de correo electrónico para cada aplicación que publico. En su momento fue una buena idea, pero eso me ha hecho monitorear muchas bandejas de entrada. Por fortuna, puedo configurar mi cuenta de outlook.com con múltiples cuentas de email, de tal forma que puedo verlas todas a la vez y me es posible responderle a la gente desde la dirección en la que ellos enviaron su mensaje. En retrospectiva, debí crear sólo una dirección email para soporte con mi nombre de editor de aplicaciones, por ejemplo, support@contoso.com. Tú debes considerar lo que mejor funciona para ti.

Considerar tener presencia web

Hice un sitio web sencillo en el que se describen todas mis aplicaciones. Solía tener un sub-sitio o micrositio para cada una, pero con base en el tráfico y costo de mantenimiento, modifiqué el sitio para que sólo existiera un espacio en el que se describiera cada aplicación junto con su link de descarga en windowsphone.com, un espacio en donde los usuarios encuentran los detalles y capturas de pantalla. También utilicé el sitio para hospedar mi política de privacidad.

Monitorea tus aplicaciones

Los reportes disponibles en el tablero del Centro de Desarrollo de tu cuenta son excelentes para monitorear las descargas, compras y reportes de fallos. Entro al sitio de manera regular, sin embargo, en el mundo móvil en el que vivimos, utilizo la aplicación del Dev Center cada vez más. Es la aplicación oficial de la gente del Dev Center y lleva la información de tu aplicación directo a tu teléfono. Todos aman los gráficos y en ésta se encuentran muchos de ellos.

clip_image016

Descarga la aplicación del Dev Center aquí:

http://www.windowsphone.com/en-us/store/app/dev-center/2d3063c2-4b29-4e69-9c03-50b67b0e6aec

¡Felicidades! Ya avanzaste y utilizaste herramientas durante este proceso, para asegurar que tu aplicación es adecuada para subirla en la Tienda y alcanzar a tu audiencia. Te dejo mi última herramienta en este conjunto – mi lista de pendientes, que considero como una de las herramientas importantes en mi lista y la uso en el transcurso de mi proceso de desarrollo de aplicaciones; me recuerda todo lo que necesito hacer. Quizá te veas a ti mismo haciendo alguno de estos pasos en orden diferente, y eso también es correcto.

app submission checklist

¿Qué hay en tu caja de herramientas de Windows Phone?