Turbo Charge Visual Studio with DevExpress CodeRush
In the September issue of Visual Studio Magazine, we reviewed JetBrains ReSharper, a Visual Studio add-in that provides a full range of developer productivity tools. This month, we look at another productivity-boosting tool for .NET developers: DevExpress CodeRush 9.2, which includes the powerful Refactor! Pro tools from Developer Express Inc. (DevExpress).
CodeRush adds several new navigation features to Visual Studio, some of which you'll use once or twice a day, and others you'll use dozens of times in an hour. My favorite feature could be the "next issue" function, which lets you cycle through problem areas in your code with just two keystrokes. But the feature I might use most could be CodeRush's ability to complete If statements for me. I type in the If keyword, enter a test, and finish the statement by hitting the Enter key. CodeRush not only finishes the statement, but moves my mouse to the interior of the new If block.
CodeRush also shows you your code in new ways. Structure highlighting displays a set of brackets that shows where each code block begins and ends, as well as how the blocks are nested. CodeRush arrows appear beside any continue, break or Exit statement. Click one and it takes you to the code to which the statement transfers control.
Given a chance, CodeRush will even generate code for you. The template feature allows you to enter an abbreviation-"mb," for example-and have CodeRush write out the code you need for a message box. When you enter the name of a class, CodeRush will add the Using or Imports statement for the namespace that class belongs to, provided it isn't already present. And I haven't discussed the refactoring support included with Refactor! Pro.
[Click on image for larger view.]
|Figure 1. Click the arrow after the "return" statement, and CodeRush shows where control is transferred to. The popup table at lower-right displays available keystroke commands.|
CodeRush does require commitment. Many features are accessible through keystroke combinations or through abbreviations entered in your code. While the keystrokes and abbreviations are customizable, you'll have to remember-and remember to use-them. DevExpress does help you get up to speed with the tool, including a dockable training window, on-screen reminders of features you can use and mini-training movies (you can turn these aids off).
Installing CodeRush was a snap: I shut down Visual Studio, double-clicked the DxExperience executable that I downloaded from the DevExpress site, and picked CodeRush from the tools in the package. To stress-test CodeRush, I installed it on a slow machine that just barely supported standard Visual Studio functionality. I did have responsiveness issues. I'd occasionally find, for instance, that after entering a Namespace, I didn't get Visual Studio's IntelliSense list of classes. On a computer that went beyond the minimum requirements for Visual Studio, CodeRush worked fine for me.
Because of all the feedback CodeRush offers through icons embedded in your code, you may find your screen looks cluttered-and it is, compared to the basic Visual Studio display. I had one co-worker object to structural highlighting brackets because it made the screen too hard to read. Fortunately, if you don't find value in any CodeRush feature, you can turn it off or customize it.
CodeRush is more expensive than equivalent programmer-productivity tools, but it also provides more refactoring support than its competitors. It provides comparable support to both Visual Basic and C# programmers, a boon for developers using both languages. If you want to see if the tools fit your programming style and you're using
Visual Studio 2008, you can install CodeRush Xpress for free. There's also a 30-day free trial version of the complete package that works with any version of Visual Studio.
Developer Express Inc. Web: www.devexpress.com Phone:
$250; discounts available when purchasing multiple licenses Quick Facts:
Visual Studio add-in that provides code analysis, refactoring and other programmer-productivity tools Pros:
Wide range of tools for making developers more productive; includes Refactor! Pro; supports both Visual Basic and C# Cons:
May be too intrusive; requires a computer that supports Visual Studio comfortably
Peter Vogel is a principal in PH&V Information Services, specializing in Web development with expertise in SOA, client-side development, and user interface design. Peter tweets about his VSM columns with the hashtag #vogelarticles. His most recent book ("rtfm*") is on writing effective user manuals, and his blog posts on communicating effectively can be found at http://blog.learningtree.com/category/communication-2/.