[Overview]
Developer Productivity Tool for Microsoft Visual Studio
Download ReSharper 6.1.1
30-day free trial (35.9 Mb)ReSharper is a renowned productivity tool that makes
Microsoft Visual Studio a much better IDE. Thousands of .NET developers
worldwide wonder how they've ever lived without ReSharper's code inspections,
automated refactorings, blazing fast navigation, and coding assistance.
How ReSharper Helps Visual Studio Users
• On-the-fly code quality analysis in C#, VB.NET, XAML,
ASP.NET, ASP.NET MVC, JavaScript, CSS, and XML. ReSharper will tell you right
away if your solution contains errors or code that can be improved.
• Instant fixes to eliminate errors and code smells.
Not only does ReSharper tell you where there's a problem in your code but it
provides quick-fixes to solve them automatically.
• Solution-wide refactorings to safely change your
code base. Whether you need to revitalize legacy code or put your project
structure in order, you can lean on ReSharper.
• Multiple code editing helpers including extended
IntelliSense, hundreds of instant code transformations, auto-importing
namespaces, rearranging code and displaying documentation.
• Navigation features to instantly traverse your
entire solution. You can jump to any file, type, or member in your code base in
no time, or navigate from a specific symbol to its usages, base and derived
symbols, or implementations.
• Code formatting and cleanup to get rid of unused
code and ensure compliance to coding standards.
• More features including generation of common code,
extensible templates, internationalization assistance, and unit test runner.
Why Upgrade to the Latest ReSharper 6
• If you're a web developer, jaw-dropping support for
JavaScript, CSS, and Razor view engine should be a perfect reason for you to get
the latest ReSharper.
• For VB.NET developers, we have finally introduced
on-the-fly code analysis for VB.NET, plus additional code transformations and
structural search and replace.
• ReSharper's navigation and search received a major
upgrade that includes new navigation actions and support for composite search
queries in Go To features.
• Developers dealing with unit tests on a daily
basis will appreciate the improved unit test runner that now gives meaningful
feedback on build failure and provides a long-awaited Repeat Previous Run
command.
• New code inspections have arrived that could save
you an hour or two on debugging, such as Possible multiple enumeration of
IEnumerable.
• If you're used to spending time figuring out
what's going on in third-party libraries, you should like decompiling
functionality that comes with ReSharper 6.
• When ReSharper points you to a nasty code issue,
it's now easier to find all similar issues in a given scope, thanks to a new
pop-up menu item.
Read more about ReSharper 6 »
[What's New]
This page lists major improvements introduced in ReSharper
6.x. compared to prior versions of the product. Highlights include support for
JavaScript, CSS, and Razor view engine; bundled decompiler; enhanced navigation;
redesigned management of settings; and lots of new code inspections for
different languages.
** JavaScript support
JavaScript support spans most ReSharper 6 feature groups
including code inspections, navigation, refactorings, and coding assistance.
Symbol and smart completion are available in JavaScript, enabling you to filter
out the enormity of JS library functions.
You can take advantage of ReSharper features wherever JavaScript is used, be it
separate .js files, inline script blocks in ASP.NET and HTML, or function calls
in markup element attributes.
Navigation options in JavaScript include File Structure and Go to File Member
for quick overview of and browsing to file contents.
Find Usages and Highlight Usages help track how JavaScript symbols are used
throughout the solution.
You can use JavaScript code formatting and naming style control to adhere to
organizational coding guidelines, and unit testing support through QUnit to
assure the quality of JavaScript code.
**
ASP.NET MVC 3 Razor support
ReSharper's ASP.NET MVC feature pack is extended with support for the new Razor
view engine.
ReSharper brings its full power to C# code blocks in Razor views, including code
highlighting, code completion, context actions, refactorings, and navigation.
ReSharper's navigation infrastructure, including File Structure and Go to File
Member, works correctly in .cshtml files.
Quick navigation between views, controllers, and actions works with Razor as
efficiently as you would expect. When returning a view from a controller action,
you can now take advantage of view completion.
** CSS support
ReSharper applies its own highlighting to CSS syntax. In addition, every color
value is underlined with the respective color, and a quick-fix is available to
help change it using a graphical color picker.
You can easily find usages of a CSS property or selector both within the current
file and in a larger scope.
File Structure and Go to File Member have also successfully arrived to CSS
files, bringing support for lowerCamelHumps search.
ReSharper provides its own code completion in CSS files and HTML/ASP.NET markup
files. It helps you complete tag names and attributes, pseudo-classes, CSS
properties and property values.
In addition, ReSharper 6 introduces refactorings for CSS, such as Rename and
Extract Style.
** HTML support
ReSharper 6 brings basic HTML support to the table. First of all, you get code
completion for tags, attributes and attribute values where applicable. This is
especially handy for values of class and id tags where ReSharper brings up
available CSS properties and existing IDs:
We have also introduced a special kind of Parameter Info showing you a quick
overview of a given HTML tag or attribute. The Rename refactoring for CSS
classes and IDs can be invoked right from HTML.
Finally, we have introduced a set of context actions in HTML that should be
familiar to you from your ASP.NET experience:
** Async CTP support
Not only does ReSharper 6.1 support async and await keywords — both in C# and
VB.NET — but it also provides a set of related code inspections and quick-fixes.
For example, it sees dead code when an asynchronous method lacks await
operators.
Also, when changing your method to become asynchronous, ReSharper helps you
correct the method to return a task of a type, like this:
** VB.NET code analysis
Visual Basic .NET support in ReSharper lacked on-the-fly code inspections for a
couple of years, but the wait is finally over: VB.NET code analysis is making
its first steps in ReSharper.
Highlighting for errors and code issues right in the text editor, ticks on the
marker bar, inclusion of VB.NET code issues in Find Code Issues and Errors in
Solution tool windows: it's all coming in ReSharper 6!
**
Enhancements in XAML support
Silverlight, WPF and Windows Phone 7 developers have a reason or two to like
ReSharper 6.
We have introduced quick-fixes to create properties, dependency properties, and
namespace aliases from usage, improved code completion for bindings, and made
ReSharper work nicely with d:DataContext and d:DesignInstance properties.
In other news, we have enabled Silverlight internationalization assistance in
addition to the previously supported WPF.
Last but not least, there's no more duplicate code completion in XAML files: on
pressing Ctrl+Space, you get either ReSharper or Visual Studio IntelliSense but
not both.
** Color assistance
Whenever you're working with a color, be it in CSS, C#, VB.NET or XAML,
ReSharper 6 provides color highlighting for properties representing colors and
code completion visualizing colors and brushes:
In addition, a quick-fix is available enabling you to pick a color from palette:
** Macros for file headers
File headers that ReSharper applies on code cleanup can now contain macros
defining things such as solution, project and file name; current date and time;
and file creation date and time. This means you don't have to manually update
the file header ahead of every cleanup.
**
ReSharper suggestions explained
Sometimes, it's not outright clear why ReSharper highlights code in a particular
way. However, it's now easy to get an explanation why ReSharper is coming up
some of its most perplexing code inspections: clicking Why is ReSharper
suggesting this in the drop-down menu that you get on pressing Alt+Enter opens a
wiki page clarifying a particular inspection.
**
Searchable code inspection severity options
Customizing inspection severity is now a lot easier, for several reasons. First
of all, all code inspections can now be configured to be shown with a particular
level of severity, be it an error, warning, suggestion, or hint.
Second, we have introduced several tabs in the Options dialog that help manage
inspection severity for a specific language or technology.
Last but not least, you can now search for specific inspections in the list,
which is an enormous time saver if you're looking to customize inspections
containing a particular keyword.
**
ReSharper SDK
The new ReSharper SDK is set to simplify the development and maintenance of
ReSharper plug-ins. Introduced with ReSharper 6.1, the SDK provides target files
and a full set of ReSharper assemblies, including test infrastructure assemblies
required to test ReSharper plug-ins. Visual Studio templates for creating
different kinds of plug-in projects are also available with the SDK.
ReSharper SDK is available for download as an .msi installer (with Visual Studio
project templates) or as a .zip archive (for continuous integration.)
**
Performance and bug fixes
We have processed hundreds of bug reports and bad performance complaints.
Between releasing versions 6.0 and 6.1, we have fixed around 150 performance
issues and over 800 bugs! For example, if you have seen ReSharper 6.0 processing
source files longer than expected, versions 6.1 and 6.1.1 fix that, and contain
a lot more performance fixes.
** Extended navigation and search
Navigation has been enhanced and extended in a multitude of ways. For example,
when you're looking to jump to a file, you can narrow down the search by
entering parts of a path to the file using spaces as delimiters. This is super
handy when you have hundreds of similarly named files in your solution:
Go to File Member has received a new option called Include members from related
files that shows members declared in files containing base and derived types:
There's a new contextual navigation feature available for types: by calling the
Navigate To menu upon a type declaration or usage, you can easily get the list
of extension methods for this type:
Another new contextual navigation feature is Navigate to Parameter Declaration.
This is an efficient substitute for Go to Declaration when you're dealing with
multi-parameter methods: it lands you on a specific parameter instead of a
method name. That means, no more lost focus while scrolling to the parameter you
need.
ReSharper 6 also adds a set of new filters in the Find Results window that you
use to focus on specific kinds of occurrences while searching for usages. For
example, if you're searching for usages of a method, use the new Show Base
Method Calls filter to restrict search results to calls to its base method:
Other new filters include Unit Test Usages to focus on usages of a symbol in
test fixtures, and Interface Qualifications to filter out search results to
usages of an interface in explicit implementations:
** Bundled decompiler
With ReSharper 6, you don't need a third-party decompiler anymore! Decompile and
navigate to library code as easily as you navigate to source code. The entire
ReSharper navigation infrastructure, including Go to Symbol/Type/File/File
Member, File Structure, navigating through inheritance hierarchy and usage
search, is available for decompiled code.
You can go to decompiled sources from anywhere, including from the source code,
Go to windows, or Object Browser.
Note that we have also introduced a standalone decompiler called dotPeek that is
available to everyone, free of charge.
**
Improved management of settings
In ReSharper 6.1, the settings engine has been revamped extensively, with extra
emphasis on sharing and managing settings. We have made many more settings
accessible and sharable, and introduced new granular settings — for example,
those defining IntelliSense behavior for different languages.
Settings are now layered, meaning that you can define global, per-solution,
per-team or individual settings. Also, you can now export and import all or
selected settings to/from a single file:
** Optimizing assembly references
ReSharper 6.1 helps you inspect assembly references in any C#, VB.NET, or XAML-enabled
project, and see whether any of them are effectively not used. As soon as you
know that, you can remove all unused references, or clean them up selectively.
**
Multiple new code inspections
We have introduced tens of new on-the-fly code inspections in ReSharper 6, all
of which work in C# code and the majority in VB.NET.
Prominent additions include Possible multiple enumeration of IEnumerable that is
triggered when you're doing excessive work looping through an enumerable:
Another inspection that could save you an hour or two on debugging is Return
value of pure method is not used. It reminds you when you're not assigning a
return value of a method that doesn't have any side effects:
** Find similar issues
ReSharper 6 adds another pop-up menu item that displays on pressing Alt+Enter
over highlighted code. This lets you search for similar issues in the entire
project, solution, or a folder. This is a much more straightforward way to focus
on a specific problem than before when you had to start with searching for code
issues in a scope, and proceed with carefully customizing filters.
**
Converting LINQ to loops
In ReSharper 5, we have introduced transformations from for and foreach loops to
LINQ statements. We simply wouldn't stop there: if you prefer traditional loops
over the elegant query language, ReSharper 6 will happily transform LINQ to code
for you.
**
New String.Format context actions
We have done a few things to help you deal with format strings with less
friction. For instance, when the caret is on a format item, the item is
highlighted along with its corresponding object. Then, we have a pack of new
context actions to include and exclude format items.
What this essentially means is that you can enter
string.Format(""), and add any number of format items with Alt+Enter from there!
** Import types for pasted code
Everyone copies and pastes code sometimes, right? While we can't influence what
you're copying, we can help you paste it painlessly. When an alien piece of code
gets pasted in, ReSharper 6 figures which import directives it needs, and lets
you create all of them with a single Alt+Enter.
**
In-place refactorings
ReSharper 6 lets you execute some of its most popular refactorings in a new way:
you edit code first, then apply a refactoring by pressing Alt+Enter. With
Rename, this means you modify a symbol declaration, press Alt+Enter and select
Apply Rename Refactoring to spread the change over all usages of the symbol.
We've also enabled Change Signature and Move Static Members to work this way.
With the latter, you just copy a static member, paste it in a target class, and
apply the move by alt-entering upon this popup:
**
Improvements in unit testing
ReSharper's unit test runner has received a great deal of improvements for this
release. For instance, it now does provide an error message when you're running
tests and your solution doesn't compile. In terms of framework support,
ReSharper 6 now detects NUnit test cases both in the Unit Test Sessions window
and in the unit test pop-up menu:
In other news, we have introduced a set of default shortcuts for unit testing
actions, and a new action called Repeat previous run that lets you re-run the
most recent set of unit tests from any position in code.
[Features]
ReSharper is an awesome tool. If you're using it you probably
agree and if you aren't you should be. The productivity gains are incredible.
The moment you see another developer step effortlessly through the code you'll
agree.
• Code Analysis
• Navigation & Search
• Refactorings
• Internationalization
• Code Generation
• Build Scripts
• Open API
• Coding Assistance
• Code Cleanup
• Code Templates
• Unit Testing
• ASP.NET Editing
• XAML Editing
• Cross-Language Functionality