What's New in ReSharper 4.5
Performance and Memory Usage Improvements
We have managed to make ReSharper load and work faster and more smoothly in general, particularly on big (and we mean BIG) solutions.
Wall-time measurements of solution loading show 20 to 40 percent acceleration until the solution is ready for code editing. Web site loading time has also been reduced by a third. A certain mixed-language solution consisting of about 15 thousand classes now takes only 70 seconds to load, and this includes making every ReSharper feature available.
The list of significantly accelerated operations includes:
- Renaming symbols
- Finding commonly used symbols
- Creating symbols from usage
- Analyzing large XAML files
We've also cut down the volume of memory resources required to analyze jumbo autogenerated code files, which should especially benefit those who work with ASP.NET and LINQ to SQL.
Overall, the range of solutions that ReSharper is able to handle without degrading responsiveness is now wider than ever.
Solution-Wide Code Inspections
Traditionally, developers have been unable to detect unused non-private members on the fly. To address this challenge, aided by the ever-improving solution-wide analysis, we introduced a set of specialized code inspections that only work when you let ReSharper analyze your whole solution. These inspections help you discover:
- Unused non-private declarations
- Unused return values of non-private methods
- Unaccessed non-private fields
- Unused parameters in non-private members
- Abstract or virtual events that are never invoked
- Unassigned fields
- Members and types that can be made internal instead of public
Look for these inspections in your code and on the Marker Bar, highlighted as warnings or suggestions. In addition, new code annotations are available that you can use to mark certain unused non-private types and members to prevent ReSharper from fussing about them.
Visual Basic .NET developers can now benefit from VB9 language support that includes implicitly typed local variables, object initializers, anonymous types, extension methods, lambda expressions, partial methods, and embedded XML. VB9 support is all around you, courtesy of new context actions, code completion, refactorings, and Parameter Info, among other supporting features.
Extended Naming Style Configuration
You can now define custom naming style settings for different languages and symbols including types, namespaces, interfaces, parameters, method properties and events, static and instance fields etc. For every kind of symbol, you can configure one of five casing options, prefixes and suffixes, variations for different access rights, abbreviations to preserve, or enable naming inspections. As a result, you can precisely align the way ReSharper completes and generates code with your specific coding guidelines.
- Go to Implementation
- This new navigation feature lets you jump from usage of a base type or member to any of its end implementations, bypassing intermediate steps in the inheritance chain.
- New and Improved Refactorings
- ReSharper 4.5 has added Inline Field to its family of Inline refactorings. Rename refactoring now provides name completion, and some of the other refactorings were thoroughly refactored themselves, to make them perform faster.
- Native MSTest Support
- Initially available through VstsUnit Plugin and then Gallio, MSTest support has finally made its way to being provided natively in ReSharper, on par with nUnit.
- Wider Cross-Language Capabilities
- Quick-fixes and context actions work better in many cross-language scenarios: for example, you can extend a control written in VB.NET+XAML by choosing "create from usage" right from a C# usage. Add increased coverage for XAML and ASP.NET, and you'll get a substantial package of improvements.
- Smoother Language and Framework Support
- Following the tradition of ReSharper 4.1, we have improved compatibility with F#, Compact Framework, Silverlight 2 and other languages and tools.
- See also:
- All ReSharper Features