Anyone that knows me, will confirm that I'm a real gadget-guy, that I love utils, tweaks, shortcuts, add-ins any anything like that. I love the things that some people hate.
But I'm quite selective when it comes to development tools. I really love powerful IDE, but the speed, responsiveness and stability are still top priority.
VS.net itself is very nice, but there are some power-tools that can enhance it. I was looking for some editor enhancement and refactoring features. CodeRush and ReSharper are two of them and they both seemed like pure diamonds at first sight. I gave both of them couple of chances, not just one, but they just don't do it for me.
My home computer might seem too skinny (Althon 2000+, 768 MB RAM) but much more powerful work computer at 3.4 GHz and 1 GB of RAM still can't cope with Sharks 17 projects in a solution! VS.NET just eat incredible amounts of RAM, gets really slow and crashes sooner or later. And that's just not acceptable.
At last SLODUG meeting Miha recommended Xtreme Simplicity C# Refactory. It's just a refactoring tool, but I gave it a spin. For a moment I was willing to forget about IDE enhancement and settle just for refactoring. But it behaved no different then CodeRush or ReSharper. I was ready to give up and just wait for Visual Studio 2005.
But then I gave ReSharper yet another chance! But not version 1.0, but 1.5 beta or Early Access Program (EAP) as they call it.
And I saw the light! I have found what I was looking for. It works great, tremendously enhances VS.NET and it's stable and quite fast. From time to time it seems to stall for a second or two, but that's rare and it doesn't bother me a lot. It still consumes a lot of RAM but it does that without significant impact to system. Let me remind you that it's beta software and it gets updated and fixed every couple of days. You will need 1.0 license in order to use it, but it's worth every penny you will spend on it! Naturally, you can also request an evaluation license key.
ReSharper has a long list of features so after two weeks of serious usage I'm still learning new tricks every day. So far my favorite features are:
- Error Quick-Fixes - it highlights the errors and offers a quick fixes when you press Alt+Enter (example: for example a unknown variable - you can rename it or declare one)
- Refactoring / Renaming variables - renaming a variable on the fly and not worrying how much damage Replace will do to other code you didn't want to change.
- Find Usages - locates usages of methods, variables, fields, etc. Don't ever again recompile the code to figure what you missed! An incredible time saver!
I just realized that I could list every single feature in this list... Just check complete list of features on JetBrains site. And bear in mind that this is documentation for 1.0, 1.5 adds more goodies.