views:

2018

answers:

6

In my department, we are currently using ReSharper 4.0 and deciding whether to upgrade to 4.5 upon its release next week. I personally am a huge fan of ReSharper however a number of my colleagues have pointed out that they have been using a plug in from DevExpress called Refactor Pro that performs similar functionality.

http://www.devexpress.com/Refactor
http://www.jetbrains.com/resharper/beta.html

Has anyone previously compared these tools and hold any strong views on which tool would give us the greatest increase in productivity and why?

+3  A: 

I'm using DevExpress which has a lot of "hidden" functionality, so you need to read the manuals to know how to activate some of the functionality. I find it very passive and subtle.

I used ReSharper and found it buggy and very invasive in my coding style. Bracket-closing drove me nuts, it ignored my preferences and couldn't cope with how I write my lines of code - which may not be most efficient but it's one of those things that ain't gonna change!

Program.X
Not sure which version of Resharper you tried, but it has got a lot better recently. I am on 4.0 and don't see any obvious bugs, apparently 4.5 is better still in terms of quality. Know what you mean about bracket closing though.
Steve Haigh
You can disable the bracket closing in the Options...
zcrar70
A: 

R# 4.5 is a free upgrade if you have a 4.0 license. So I'd suggest to get and use it - changing the "productivity tool" is always a pain because you'll have to get used to different ways, keyboard shortcuts etc. of doing things - no matter how good the tool actually is.

Lucero
+5  A: 

In my department, we also use ReSharper. Today, I installed 4.5, but had already used 3.something, 4.0 and 4.1 before. It really offers many great refactoring and code-writing supporting functions, renaming methods and functions, reordering parameters... What I really like is that according to your corporate code style, you can configure ReSharper to give you hints on style violations in different severity levels (and quickly apply according changes, like MS StyleCop, but much easier to configure and more subtle). My absolute favorite feature is Class-Searching by entering only the CamelCases, i.e. you type TSHWLOV and ReSharper will know that you mean the class from some referenced library named 'TerrificSearchHelperWithLotsOfVoodoo'.

Last year I have tried the DevExPress CodeRush/RefactorThis-Alternative, after I was quite impressed by the things that Oliver Sturm did with it on BASTA Spring 08. The interface catchier and more impressive than Resharper, there are huge arrows flipping around your IDE and things like that, though the core functionality is rather similar. I had the feeling that CodeRush is more focussed on code creation than on refactoring, i.e. more shortcuts for tasks like creating variables etc. My favorite feature there was a sidebar, which always shows you all keyboard-shortcuts available in your current context. This makes you learn those commands quickly, where in ReSharper you have to look up most of them in nested submenus. Both suites are really powerful and it after months of using them you will probably still discover new functions, which you have always needed without knowing it. However, I decided in favor of ReSharper mostly because of I was more familiar with it and DevExpress was using much resources on my notebook and occasionally even slowed it down. By now, I use a much more powerful machine again, maybe I will give it another try soon.

Simpzon
FWIW: There is a community plugin for CodeRush which provides a compatibility layer for those more used to the R# keystrokes -> http://code.google.com/p/dxcorecommunityplugins/wiki/CR_ReSharperCompatibility
Rory Becker
As for resource usage: CodeRush has undergone some sizeable improvements. Version 9.2.4 and higher is considerably better on that front. see this blog post for details -> http://community.devexpress.com/blogs/markmiller/archive/2009/06/17/performance-and-memory-milestones-in-coderush-and-refactor-pro-preview-of-9-2.aspxI also did my own tests just prior to it's release -> http://rorybecker.blogspot.com/2009/06/coderush-920-speed-and-memory.html
Rory Becker
A: 

I have a personal copy of Refactor Pro but I use R# 4.1 at work with the StyleCop add-in as that is the team standard tool. I like RfP's arrows and code positioning stuff which is better than R#. Otherwise the tools are very similar.

However, at this time, its the StyeCop add-in that swings it in favor of R# for me.

Cheers Benjy

Santosh Benjamin
I'm currently writing CR_StyleNinja for CodeRush -> http://code.google.com/p/dxcorecommunityplugins/wiki/CR_StyleNinja
Rory Becker
+3  A: 

I personally prefer CodeRush.

I find R#'s interface drives my (admittedly minor) OCD tendencies crazy. The little lightbulb insists on appearing on the far left of the screen, even if it's advice pertains to something in the middle or on the right. I find it garish and distracting.

By contrast, CodeRush's equivalent smart tag is lower contrast and smaller. It is therefore capable of locating itself within the code without distracting from said code. I find I can ignore this SmartTag when I need to, and it is always right in front of me when I decided I need it.

It is mainly this, that has prevented me from wanting to explore R# any further.

As far as CodeRush's feature set: Code Analysis, Refactorings, CodeProviders, Templates, TabToNextReference, QuickNavigation and many more.

I especially like CodeRush's extensibility which has allowed myself and several others to create many plugins for use within it. (http://code.google.com/p/dxcorecommunityplugins/)

CodeRush also has some top quality support and a very active community of users.

Certainly neither R# or CodeRush will suit all users. Every one has their own preferences. However, if you've not tried both, you should certainly do so.

If you come from the R# side of the equation and are looking to test out CodeRush, then you may find the compatibility plugin useful (http://code.google.com/p/dxcorecommunityplugins/wiki/CR_ReSharperCompatibility)

In addition CodeRush has a Free edition 'CodeRush Xpress' which Microsoft commissioned DevExpress to create, and which they have licensed on behalf of every user of Visual Studio 2008. This partnership will continue into VS2010 upon it's release.

If you have any questions regarding CodeRush you can find details for contacting me at the bottom of my community wiki page.

I should say that I do not work for DevExpress. I am what you might call a DevExpress MVP. To maintain this position, I answer questions in the DevExpress forums (and nothing else).

Everything I say is my own honest opinion.

If you have any questions, feel free to contact me :)

Rory Becker
+2  A: 

I've tried both, and really didn't get along with ReSharper. I found it to be just too intrusive for my coding style. When I switched to CodeRush / Refactor! it was like I'd found the perfect aid to my productivity. The refactorings are, for the most part, exactly what I wanted to see from this kind of product.

It is, however, horses for courses and you may well find that you prefer ReSharper. The best advice I can give is to try the other products and see which you prefer.

ZombieSheep

related questions