Why do I need resharper?

I thought that I'd put together this blog explaining some of the most useful benefits I've found as a long time user of Visual Studio without and extra bells and whistles of a third party refactoring plugin.

One of the nicer features that I make extensive use of in my current project (which is a solution with 19 projects and probably near a thousand different classes) is the Camel Cased type and method search.  Instead of opening up the solution explorer and sifting through a long list of files, I can simply hit Ctrl-T and type the upper case letters of the class I need.  If I want to see the CustomFieldDesignerViewController class, I start typing, C-F-D-V-C and the list of matches will be reduced to only those who have upper case letters in that order.  The same "Camel Hump Casing" that applies to the type search also applies to the method search, and to the intellisense.  When I want a line that says:

CustomSomethingDropDownList x = value;

All I have to do is type C-S-D-D-L and the intellisense will be automatically filtered to only the things which match that camel casing.  The saves an incredible amount of time with typing by allowing the correct items to be selected faster than having to type out the first maybe 10+ characters to get to what you want (esspecially on projects when a lot of the classes start with the same first names, etc)

The second thing that has come in extremely useful that resharper does is that it finds "illogical" logic.  For instance, if I were to say:

If (x == 1)
{
}
else if (x ==1)
{
}

Resharper will highlight this else and explain that this will never happen.  Now in my example this is clearly very easy to see from reading it.  But imagine if you had a series of if/else statements with more complicated logic.  It's very useful to be able to detect these because it typically points out a mistake in a branch of the logic as opposed to a useless section.  This saves an immeasurable amount of time by helping proactively identify bugs before they become bugs.

The highlighting that comes with Resharper is also extremely more detailed then what comes standard with Visual Studio.  Now a lot of people would argue that this highlighting is unnecessary.  It points out a lot of issues which range from "hints" to "errors".  Errors that might otherwise not show up until trying to compile (and compiling a 19 project solution is no small amount of time).  The best part about these issues is that with a simple click of ctrl-enter resharper can typically fix most errors for you.  This also has the added benefit of teaching programmers if they have a habit of doing something that is in reality, unnecessary.  It also helps large groups come up with standards (as resharper's hints and errors are configurable) that everyone can agree to follow.

These are just a few of the many benefits, I'd feel remiss if I didn't at least mention the enhanced refactoring support, enhanced template support, and automated using inserting (for extension methods, which visual studio does not yet support).

Take a look at the Re-sharper 4.0 EAP's if you can, it's certainly worth checking out.