Conform with Standards using Microsoft FXCop, A Code Analysis Tool for .NET

When you are already in a production environment, working 8 hours a day or so, developing applications for clients, you must be aware of guidelines and standards needed to be followed in order to assure that your program is robust and maintainable. Microsoft FxCop is a code analysis tool that checks .NET managed code assemblies for conformance to the Microsoft .NET Framework Design Guidelines. It uses MSIL parsing, and callgraph analysis to inspect assemblies for more than 200 defects in the following areas: Library design Globalization Naming conventions Performance Interoperability and portability Security Usage FxCop is intended for class library developers; however, anyone creating applications that should conform to .NET Framework best practices will benefit. FxCop is also useful as an educational tool for those who are new to the .NET Framework or are unfamiliar with the .NET Framework Design Guidelines. [inline:fxcop.jpg=Microsoft FX Cop] Microsoft FX Cop checks Naming Rules for example: Visual Basic
  1. Dim StrWord as String
C#
  1. string StrWord;
Microsoft FxCop would complain and instruct you to use Camel Casing for these variables and to avoid abreviation such as "Str" as prefix. To fix this issue, you may change your declarations to something like this: Visual Basic
  1. Dim wordEntered as String
C#
  1. string wordEntered;
For method names and properties, it is advised to use Pascal-Casing, that is capitalizing each letter of each word like: Visual Basic
  1. Public Property ProductCode As String
  2. ...
C#
  1. public string ProductCode {
  2.      get { ... }
  3.      set { ... }
  4. }
Microsoft FXCop also checks for wrong implementations like when checking a string if it is null or empty, some might use this implementation: C#
  1. if ( wordEntered.Equals(string.empty) ) { }
OR C#
  1. if ( wordEntered.Equals("" ) { }
Microsoft FXCop recommends using the string.IsNullOrEmpty function to check for empty strings like this: C#
  1. if ( string.IsNullOrEmpty(wordEntered)) { }
FXCop still has so many features such as checking for security holes in the code, code performance, localization etc. To check the full functionalities of Microsoft FXCop, you can download it freely at Microsoft at this address: http://www.microsoft.com/downloads/details.aspx?FamilyID=9aeaa970-f281-4fb0-aba1-d59d7ed09772&displaylang=en Try Microsoft FXCop. It would really change your coding habits. Happy Coding!

Add new comment