Microsoft FxCop…

FxCop es un analizador de buenas prácticas de programación, es una herramienta de análisis de código que verifica el código de las assemblies de .NET para lograr la conformidad de “Microsoft .NET Framework Design Guidelines“.

FxCop inspecciona los assemblies para detectar más de 200 defectos en las siguientes áreas: 

  • Diseño de librerías
  • Globalización
  • Convenciones de nomenclatura
  • Performance
  • Interoperabilidad y portabilidad
  • Seguridad
  • Usabilidad

FxCop incluye versiones GUI y línea de comandos, con soporte para analizar componentes .NET 1.x, .NET 2.0 y .NET 3.x.

FxCop nos ayuda a analizar nuestro código y nos propone algunas mejoras y fixes al código, con el fin de hacerlo más robusto y seguro.

Como dije, hay 2 formas de analizar el código, pero la manera más fácil y rápida es utilizando su GUI:

en VS .NET

Si contamos con la versión 1.35 podemos realizar el análisis, haciendo click con el botón derecho en el proyecto y haciendo click en la opción Run Code Analysis, como se muestra en la figura:

como resultado en la lista de errores obtenemos los warnings relacionados a los fixes propuestos:


la resolución de los problemas encontrados se basa en leer e interpretar los warnings. Cabe aclarar que para personalizar las reglas utilizadas en el Code Analysis, se las puede modificar en las propiedades del proyecto, en el Tab “Code Analysis”.

Si tenemos la versión 1.36b el análisis puede realizarse sobre los proyectos o también sobre clases específicas (de ahí la denominación de “Source analysis” o “análisis de fuente”:

y los resultados se visualizaran en una lista denominada “source analysis”.

FxCop.exe

FxCop.exe brinda una interfaz amigable en la cual se pueden crear proyectos de análisis de código, en el cual se pueden agregar numerosos assemblies, personalizar las políticas (reglas) de análisis, etc. En cada una de las issues reportadas se puede ver la descripción, su link a las guías de diseño relacionado, link al código, información adicional, entre otros.

Bien, ahora queda por aclarar que FxCop nos ayuda a hacer de nuestro código más robusto y más seguro, más eficiente y estándar con respecto a las buenas prácticas, por lo que es importante que sepamos guiarnos con la herramienta, absorviendo las recomendaciones para usarlas de manera directa e intuitivamente en nuestro futuro código…

En el proyecto en que estoy trabajando después de terminar el desarrollo de casi todos los paquetes, llegamos a la instancia de optimización de la aplicación, por lo cual la primer medida es optimizar el código (quizás se podría haber echo antes), y qué mejor herramienta para esto que la nombrada en esta entrada. A partir de ahora, me queda claro que debería aplicarlo a cada desarrollo que tenga. 😀

Anuncios
Publicado en Development, Herramientas. Etiquetas: . Leave a Comment »

PowerToys – Eventos de VS2005

Hace ya un tiempo que en ratos libres he estado buscando algún tipo de programa o add-in para el Visual Studio que me notifique cuando se terminó de compilar un proyecto o la solución, para así en el tantísimo tiempo que se toma el VS en compilar (en un proyecto grande) puedo hacer otras cosas (denominado generalmente “boludeo”).

He encontrado un PowerToy (o Enhancement) de Microsoft.

La página principal de referencia es:
http://msdn2.microsoft.com/en-us/vs2005/bb190754.aspx

Y la página de descarga es:
http://www.microsoft.com/downloads/details.aspx?FamilyID=cd7c6e48-e41b-48e3-881e-a0e6e97f9534&DisplayLang=en

Las mejoras que nos provee esta utilidad son varias, ya que el paquete incluye 3 utilidades:

  1. Source Code Outliner: una interesante utilidad que nos muestra una ventana con los métodos, propiedades y eventos que existen en el documento actual. Nos permite tener una vista y un acceso rápido del código del documento.
  2. Visual C++ Code Snippets: Permite trabajar en C++ con los Snippets. Ya que los snippets pueden ser usados solo en C# y VB.Net.
  3. Indexed Find: Realiza una búsqueda indexada usando el Microsoft Indexing Service, envia los resultados por la ventana de output.
  4. Super Diff Utility: Nos permite comparar 2 archivos, mostrando sus diferencias.
  5. Event Toaster Utility: Este es el que buscaba, permite ejecutar comandos o mostrar mensajes como tooltip en la barra tray cuando ocurre algún evento, como ser la compilación finalizada.

Para utilizar el “Event toaster utility” debemos hacer lo siguiente:

Una vez instalado, yendo a Tools -> Options vemos la pantalla:

Una vez ahí podemos configurar como queremos el PowerToy de Built-Int toasts.

Uno de los resultados de la configuración es:


YUPI!