MSDN UK Team blog

Get all the latest Microsoft developer news, tools, downloads, tutorials and tips right here, every day.
Search Form
Unfiltered HTML
Developers code with microsoft

What is ReSharper

Unfiltered HTML
Unfiltered HTML

What is ReSharper

  • Comments 2

I asked Hadi Hariri from JetBrains to give an Introduction to ReSharper for developers that might not have come across it before, here’s what he had to say:

We go to a lot of conferences and despite many users knowing our tools, there are still many that don’t. When one of these developers asks me “So what is ReSharper?” I know that it’s never going to be a short answer. I mean what could the elevator pitch be for ReSharper that doesn’t sound like pure marketing: “We increase your productivity”? Maybe a viable one could be “We take the dirty work out of software development”. All that aside, I know that I have roughly a minute to capture the developers attention, otherwise I’ve lost him. In this case I have 500 words to capture yours. Well, actually 387!

Remember when you created that project and named it Project.Domain, only to realize that you should have named it Project.Core? Bet you regretted it. You knew you had to adjust all the namespaces. What about placing files in the wrong folder? Those fears would be gone with ReSharper since they’d be single refactorings in one click.

Pushed an MVC application only to find incorrect action and/or controller names? That wouldn’t happen with ReSharper. Had exceptions due to passing null values? Sleepless nights because you modified a variable belonging to a closure? An Possible null value or Access to modified closure ReSharper warning would have saved you. See, static code analysis is just part of what ReSharper does and is easily extendible with Patterns, allowing you to detect what you would consider code issues and smells.

Grouping types together for better navigation? Probably because you aren’t aware of ReSharper’s navigation features. In fact you don’t even need to type things out completely. If you wanted to go to HomeController.Index inside some namespace called MvcApplication, all you would type is:

clip_image001

You’d be saving on typing, just like you would when creating code snippets with Live Templates which would allow you to be prompted for placeholders and macro executions.

Inherited some really ugly code and everything out of place? Manually cleaned it up? You could have just run Code Cleanup across the entire project with ReSharper. Imposing standards in terms of coding appearance, layout and behaviour across teams, is another one of the benefits of ReSharper.

Of course, many of these features would not only apply to C# and VB.NET, but also to languages like JavaScript as well as HTML and CSS, going beyond simple Intellisense:

clip_image002

If you’re a fan of jQuery, you know you’re constantly looking for DOM references.

See many can be novices at JavaScript, so that extra bit of detection of dead code or refactoring could always come in helpful. And similar to how ReSharper introduced some to new language features in C#, i.e. helping convert foreach to Linq statements; it does so now with JavaScript!

See, ReSharper is not just about a few dozen refactorings and saving keystrokes. So, knowing this, how can it ever have an elevator pitch that does it justice?

Just one tip, when you give ReSharper a try, kill the mouse. Become a keyboard Jedi!

  • Whilst ReSharper 6 is an excellent improvement on R#5, StyleCop users are still waiting on Jetbrains to update the integration API so that we can use ReSharper 6 and Stylecop together.

  • Good one, I wish Resharper is open source tool.

Page 1 of 1 (2 items)
Leave a Comment
  • Please add 2 and 1 and type the answer here:
  • Post