Tipos de proyectos Silverlight

En esta entrada voy a señalar los tipos de proyectos Silverlight que podemos crear con Visual Studio.

Existen 3 tipos de proyectos:

Silverlight Application: proyecto para crear una aplicación Silverlight – cómo la que empezamos a trabajar en post anteriores.

Silverlight Class Library: proyecto para crear librerías para Silverlight.

Silverlight Navigation Application: proyecto referido a las aplicaciones RIA – Aplicaciones de Internet Enriquecidas -.

StyleCop

En esta entrada quiero comentarles sobre una herramienta llamada StyleCop que les va a ser útil para revisar la nomenclatura de nuestro código C#. Esta herramienta de Microsoft nos permite analizar nuestro código de acuerdo a una serie de estilos y reglas de consistencia – para más información revisar la documentación de la herramienta.

Actualmente se encuentra en la versión 4.3.3.0 y una de las cosas positivas que tiene es la integración de la herramienta con Visual Studio 2005 y Visual Studio 2008. Lo negativo es que aún no tiene soporte para el lenguaje Visual Basic.

Enlaces de interés:

Descarga : instalador y documentación.
Información : información de la versión actual.

Paso a paso:

Una vez instalada la herramienta ya tendremos habilitada la opción para correr SytelCop sobre nuestro código. Para ello hacemos click derecho sobre nuestro archivo (también podemos hacerlo sobre el proyecto o solución) y seleccionamos la opción “Run StyleCop”.

Ejecutando StyleCop

Ejecutando StyleCop

Ahora vamos a evaluar la siguiente clase. Uno podría decir el código es “correcto”, ya que, en primer medida, nos devuelve el resultado esperado:

Código no analizado con StyleCop

Código no analizado con StyleCop

Sin embargo cuando ejecutamos StyleCop, nos detecta una serie de advertencias (como por ejemplo que falta el XMLComment de la clase y del método):

Resultado del análisis de StyleCop

Resultado del análisis de StyleCop

Procedemos a corregir cada una de las advertencias y nuestro código “corregido” queda de la siguiente forma:

Código corregido

Código corregido

Ojo que no siempre es necesario seguir al pie de la letra todas las advertencias, ya que muchas de ellas a veces no se corresponden con lo que queremos hacer (por ejemplo que la descripción de los atributos de una clase comiencen con el texto “Get or sets” , es decir en inglés, y esto no siempre es válido, por ejemplo sí estamos codificando en español). Para estos casos tenemos la opción de deshabilitar reglas en el proyecto o directamente ignorarlas.

Para deshabilitar las reglas hacemos click derecho sobre el proyecto y clickeamos en la opción “StyleCop Setting”. Buscamos la/s regla/s que queremos deshabilitar y las simplemente las des-tildamos (de esta forma no volverán a validarse la próxima vez que hagamos el análisis del código):

Deshabilitando reglas

Deshabilitando reglas

Espero que les sea útil!

Sobre el proyecto…

La idea con este proyecto será crear en Silverlight un Combo-Box de clientes, con el cuál podremos interactuar desde nuestra web. La idea del nuevo control es que tenga un gran aspecto visual, y por cada ítems podamos visualizar una foto del cliente, más algunos datos informativos (dirección, teléfono…).

Nuestro control tendrá el siguiente aspecto:

Combo-Box

Combo-Box

En la próxima entrada comenzaremos a trabajar con nuestro control.

Archivos XAP

Para comenzar veremos que nos dice la definición en msdn sobre los archivos XAP

ProjectName.xap: Archivo comprimido que incluye todo el contenido y los recursos de la aplicación Silverlight. Los usuarios descargan este archivo en sus exploradores y lo ejecutan con el complemento Silverlight.

Dentro del archivo XAP podremos encontrar DLL correspondiente a nuestra aplicación y su manifiest. Además los archivos XAP utilizan el mismo algoritmo de los archivos ZIP para comprimir nuestra aplicación, minimizando considerablemente su tamaño y permitir una buena performance en la descarga de la misma por parte de los usuarios.

Creando nuestro primer proyecto Silverlight

Como primer paso para generar nuestra primera aplicación vamos a abrir Visual Studio 2008 y en el menú “File >> Nuevo Proyecto” seleccionaremos “Aplicación de Silverlight” para crear nuestra solución y la llamaremos “ProyectoSilverlight”.

Creación proyecto Silverlight

Creación proyecto Silverlight


Al aceptar, nos aparecerá un Pop-Up el cual nos pedirá si deseamos añadir a la solución un proyecto web ASP.NET donde se hosteará nuestra aplicación, de lo contrario lo hará automáticamente en tiempo de compilación. En nuestro caso vamos a agregarlo.

Como podemos ver nuestra solución estará compuesta por 2 proyectos: uno donde trabajaremos en nuestra aplicación Silverlight, y otro proyecto Web donde alojaremos nuestra aplicación.

Estructura de la solución

Estructura de la solución

Dentro de nuestro proyecto Silverlight tendremos dos archivos (que vienen por defecto) con extención XAML y sus respectivos code-behing. El archivo App.xaml nos servira para trabajar en configuraciones, recursos y eventos que afectan a toda la aplicación. El archivo Page.xaml será nuestra “área de trabajo”, nuestro control principal.

Finalmente cuando compilemos nuestra aplicación, automáticamente se creará y copiará nuestro control Silverlight (ProyectoSilverlight.xap) en la carpeta “Bin” de nuestra aplicación web. También agregará el tag <object> en la página ASCX como en el HTML para incluir nuestro control.

Tag object

Tag object

En la próxima entrada vamos a incluir nuestros primeros objetos a la aplicación.