2010-01-27 16 views
8

Estoy trabajando en un proyecto en C# .net y WPF. Estamos usando StyleCop para ayudar a traer un estilo consistente al proyecto, y después de deshabilitar algunas reglas, estamos bastante satisfechos con él. Sin embargo, escuché a personas hablar sobre FxCop, y que esto aportaría valor al proyecto también. Por lo que entiendo, esto es más sobre una base de estructura de código ...¿Debo usar FxCop y por qué?

¿Podría alguien darme alguna razón específica sobre por qué deberíamos comenzar a usar FxCop? ¿Cuáles son las cosas más importantes que FxCop garantizará que hagamos correctamente?

+0

Consulte también http://stackoverflow.com/questions/1867867 – andreas

Respuesta

3

Detecta algunas condiciones útiles y puede mejorar su estilo de codificación. Por estilo, no solo me refiero a la colocación del bracket, etc. Pero cuestiones como las clases abstractas que tienen constructores públicos y muchos otros casos de especialistas. Se trata de pequeños detalles como estos, y luego de un tiempo los haces automáticamente.

Comenzar un nuevo proyecto con él es fácil, usarlo con un proyecto existente es más difícil ya que detectará más problemas. Vale la pena señalar que tendrá que configurar FxCop al principio, ya que señalará cosas triviales que pueden no ser motivo de preocupación.

+0

¿Están todas las reglas activas al principio, y luego puede deshabilitar las que no desea? Al igual que StyleCop ..? – stiank81

+1

Sí. Puede desactivarlos en el código o la aplicación en sí. – Finglas

1

FxCop funciona en binarios compilados, mientras que StyleCop analyzes the source code directly.

Tal vez podría utilizarlo para verificar si un ensamblado compilado, como el que envía a su entorno de control de calidad/producción, coincide con las políticas de su empresa, si alguien intenta eludir sus reglas de StyleCop.

+0

¿Dice que usa muchas de las mismas reglas que StyleCop, pero en su lugar, comprueba esto en los binarios compilados? – stiank81

+0

Es decir; Pensé que FxCop también verificó reglas completamente diferentes. – stiank81

+1

Sí, porque hay información diferente disponible; mientras que un conjunto de reglas es común para ambas herramientas, puede obtener cierta información del código fuente, y otras informaciones solo pueden obtenerse de assmblies. –

1

Lo uso, en combinación con CC.NET. Eso significa que, cada vez que CC.NET construir mi proyecto, sino que también realiza un análisis FxCop, que puede ser muy útil, ya que:

  • detecta las variables utilizadas
  • detecta métodos utilizados
  • que da una indica si ha escrito mal una palabra
  • le ayuda a recordar que debe pasar un proveedor de formato a una llamada a ToString() fi

En resumen: le ayuda a mejorar la calidad de su código.