Thanks to the people at JetBrains, I've had a chance to put Resharper 2.5 for Visual Studio 2005 through it's paces.
And, I'm pleased to report that I'm happy with it. I used the VS.NET 1.1 version for quite some time, and I liked it, but when I tried the 2005 beta, it was dog slow. Fortunately, the final product is not slow at all, and it performs beautifully. I have had one or two "error" situations that Resharper reported, but they didn't interfere with it's continued operation.
The first thing you'll notice after Resharper is installed is that when you load an existing solution, Resharper shows you a bunch of orange "lines" at the right side of the editor window for each of your classes. This is Resharper's way of pointing out things that can be "fixed" in your code.
Resharper puts a new "Resharper" Menu item in your Visual Studio Top Menu bar, providing easy access to all of Resharper's features:
ReSharper detects and highlights errors in code, without you having to compile it first. It automatically analyzes and highlights your code on the fly, while you work. If you roll the mouse pointer over an error at the right side, its description is displayed in a tooltip, and there is also a "Lightbulb" Icon with a dropdown on the left side.
Click on this and Resharper describes what it suggests to do and gives you one or more options you can select to "fix" the issue. Or, you can disable that particular type of fix with another option.
Besides errors and warnings detectable by the compiler, ReSharper can also prompt you about additional warnings that may represent coding errors. ReSharper informs you about redundant casts, incorrect format strings, declared but never used local variables, and other useful items. Additional sources for warnings can be customized and added via a dedicated Options page. You can define your own attributes, such as Nullable and NonNullable, which will be taken into account when checking for null references.
Another feature I like is the Code / Reformat Code option in the Resharper menu. I write sloppy code that isn't formatted very well, and this gives me the opportunity to not only beautify but also to optimize "using" directives, shorten references, and remove redundant "this" directives, which I use mostly for Intellisense during coding and which are unneccesary at compile time. Here is a snap of the "Code" submenu:
Resharper is pretty smart, too - it offers to auto-insert missing using references while you code. Actually, the complete list of cool things that Reharper can do is so long, I haven't even discovered them all yet.
Resharper offers extensive tools such as code generation, refactoring, navigation and search in your solution, reusable code templates, unit testing, ASP.NET Editing, special features for VB.NET programmers, NAnt and MSBuild script editing, and an open API that you can extend.
Resharper is $249 - probably not a cheap item for most developers. But when you start to measure that one-time cost against your personal productivity enhancements as a professional software developer, man, this thing can't be beat!
You can visit Jetbrains for more information, and download yourself a 30 day free full-feature trial. You may have noticed that I don't "push products" much here. In the case of Resharper, I'll make an exception. This thing rocks.