Tools day - come and get them
In the last weekend there were number of tools/frameworks that were published/upgraded/etc
- FxCop 1.36 - .NET Code Analysis Tool for Microsoft .NET Framework Design Guidelines - documentation and download
- 200+ bug fixes that reduce noise, missing analysis and rule crashes
- Support for analyzing anonymous methods and lambda expressions
- New option for skipping analysis over tool generated code
- Spell checker libraries now ship in the box
- Changes in the way references are resolved and located
- Better support for C++/CLI and the Compact Framework
- Language 'friendly' API names in the UI and resolutions (ie Visual Basic syntax if running over a Visual Basic binary)
- New globalization, design and usage rules
- New rule for targeting specific versions of the Framework (I'll talk about this in a future post)
- Performance improvements that cut analysis by 2x and use half as much memory
- StyleCop 4.3 - Microsoft Source Code Style and Consistency Tool - download
new rules:
- Enforce sort order for using directives. This aligns with the Organize Usings functionality in VS 2008
- Require standard summary text for constructors and destructors
- Require parenthesis in arithmetic and comparison expressions for added clarity
- Require String.Empty rather than “”
- Require explanation message text in debug asserts
- Require justification text in Code Analysis suppressions
- Enforce use of built-in type aliases for int, string, float, etc.
- Require a blank line between elements
- Disallow blank lines at the top or bottom of documentation headers
- Disallow regions within method bodies (enabled by default)
- Disallow the use of regions anywhere within the code (disabled by default)
- Disallow empty static constructors
- Disallow empty unsafe, lock, checked, and unchecked statements
- Disallow unnecessary or empty try\catch\finally
- Unity 1.2 First Drop - download
- Fix for a CLR bug that we hit that caused issues when running in release mode without a debugger attached
- Refactorings to support an easier Silverlight port
- Support for Generic Decorator Chains
- NHibernate 2.0 - download
With NHibernate, you do not need to-
- decorate your entities with any attributes
- inherit your business objects from any base classes
- implement an interface on your entities