[VS2010] Introduccion a StyleCop

image47dd1de4

Buenas,

StyleCop es una herramienta que analiza código fuente C# y aplica un conjunto de reglas de estilo y consistencia. Se puede ejecutar desde dentro de Visual Studio o integrado en un proyecto de TeamBuild. Es bastante útil cuando además de contar con un buen diseño de la arquitectura de tu solución, de respetar las reglas de diseño SOLID, quieres garantizar que la “estética de tu código” sea coherente entre sí. Este post se basa en la versión 4.5RC que se puede descargar desde aquí.

Un detalle a tener en cuenta es que durante la instalación del producto, puedes seleccionar la integración con Visual Studio 2010 y además si quieres los archivos necesarios para MSBuild para agregar validaciones de StyleCop durante compilaciones de Team Build.

image

Para este ejemplo, he seleccionado las 2 opciones.

Vamos por el primer ejemplo de código para que veamos lo que dice StyleCop al respecto. Si creamos un proyecto de bibloteca de clases con su clase por defecto nos encontramos con el siguiente código:

   1: using System;

   2: using System.Collections.Generic;

   3: using System.Linq;

   4: using System.Text;

   5:  

   6: namespace StyleCopDemo01

   7: {

   8:     public class Class1

   9:     {

  10:     }

  11: }

 

Y StyleCop nos avisa con 6 Warnings de los siguientes detalles a tener en cuenta:

image

Si “movemos” los using dentro del Namespace, como indican los últimos warnings, el código queda de la siguiente forma:

   1: namespace StyleCopDemo01

   2: {

   3:     using System;

   4:     using System.Collections.Generic;

   5:     using System.Linq;

   6:     using System.Text;

   7:  

   8:     public class Class1

   9:     {

  10:     }

  11: }

Y efectivamente, ahora solo tenemos 2 warnings por los que preocuparnos:

image

Agregamos un poco de código más al ejemplo:

   1: public string Foo(int firstArgument, int secondArgument)

   2: {

   3:     var res = "no";

   4:     if (firstArgument == secondArgument)

   5:     {

   6:         res = "yes";

   7:     }

   8:     if (firstArgument > secondArgument)

   9:     {res = "maybe";}

  10:     return res;

  11: }

 

Y ahora veremos como tenemos que preocuparnos por los espaciós después de las llaves, los espacios entre los elementos entre las llaves, etc.

image

 

Por defecto, StyleCop tiene activadas todas las reglas que posee, lo cual puede ser bastante molesto; en especial en lo referido a los comentarios, ya que no solo recomienda agregar tags de comentarios en todas las clases, sino que también recomienda headers en las clases, secciones de copyright, etc.

Si queremos configurar el set de reglas con el que queremos trabajar, podemos hacerlo desde el proyecto en cuestión. Seleccionamos el mismo, desplegamos el menú contextual y seleccionamos la opción [StyleCop Settings]

image

 

En este formulario veremos los diferentes tipos de reglas que se aplican durante el análisis de StyleCop. Mi recomendación > desactivar las de documentación Open-mouthed smile

image

 

En los próximos posts un poco más sobre StyleCop y Team Build.

 

Saludos @ Here

El Bruno

   


One thought on “[VS2010] Introduccion a StyleCop

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s