KEMBAR78
ReSharper: .NET Developer Productivity Tool | PDF | Microsoft Visual Studio | Unit Testing
0% found this document useful (0 votes)
147 views8 pages

ReSharper: .NET Developer Productivity Tool

This document describes various productivity tools available for .NET developers. It discusses ReSharper, a code quality analysis and refactoring tool that provides features like continuous code analysis, navigation, search, refactoring, code generation and formatting. It also describes dotCover, a code coverage tool that integrates with ReSharper and Visual Studio to measure test coverage and highlight uncovered code. Finally, it mentions dotPeek, a decompiler that can decompile .NET assemblies into equivalent C# code.

Uploaded by

Jeffrey Adams
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
147 views8 pages

ReSharper: .NET Developer Productivity Tool

This document describes various productivity tools available for .NET developers. It discusses ReSharper, a code quality analysis and refactoring tool that provides features like continuous code analysis, navigation, search, refactoring, code generation and formatting. It also describes dotCover, a code coverage tool that integrates with ReSharper and Visual Studio to measure test coverage and highlight uncovered code. Finally, it mentions dotPeek, a decompiler that can decompile .NET assemblies into equivalent C# code.

Uploaded by

Jeffrey Adams
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

.

NET Developer
Productivity Tools

Code quality analysis and advanced navigation


Refactorings and code generation
Available in Visual Studio 2005-2013

Performance profiler

Decompiler

Memory profiler

Code coverage

Contextual navigation
Sturctural search and replace
File structure view

Solution-wide analysis
Static code analysis
On-the-fly error highlighting Code analysis from console
Project dependency view
In-place quick-fixes

Type and style hierarchies


Integrated decompiler
Coding assistance

What a .NET Productivity Tool is Capable of

Project Dependency Analysis

With unparalleled support for C#, VB.NET, XAML, JavaScript,


XML, HTML, CSS, ASP.NET, ASP.NET MVC, NAnt and MSBuild
scripts including comprehensive cross-language functionality,
ReSharper will help any Visual Studio user write better code,
easily examine and refactor existing code bases.

Invaluable for large solutions, ReSharper can build project


hierarchies and visualize a project dependency graph,
which you can save and compare with new solution states
at various stages, all without compiling anything. Right
from the project hierarchy or visual dependency graph,
you can invoke navigation actions and refactorings.

You can spend less time on routine, repetitive manual


work and instead focus on the task at hand. A robust set of
features for automatic error-checking and code correction
cuts development time and increases your efficiency. Youll
find that ReSharper quickly pays back its cost in increased
developer productivity and improved code quality. With
ReSharper, .NET developers can truly experience what we
mean when we say Develop with pleasure!
Read on for an overview of ReSharper features. You can
always learn more about its extensive functionality at
www.jetbrains.com/resharper.

Continuous Code Quality Analysis


ReSharper provides continuous code quality analysis for
all supported languages, detecting errors and problems
before you even compile, right in the code editor. ReSharper
applies over 1400 code inspections to your code, so you can
instantly see whether your current file or even your whole
solution contains any errors or problems. It provides more
than 700 quick-fixes for most errors and other detected
code issues, helping you improve code instantly.

Powerful Navigation and Search


ReSharpers navigation features help you 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. Find and highlight usages in the text
editor, view the inheritance hierarchy of a certain type in
a dedicated window, and more, as navigation and search
opportunities provided by ReSharper are countless.

If ReSharper misses some code smell but you know its there,
you can create custom code inspections using structural
search patterns and define how they should be replaced.

Advanced Coding Assistance


ReSharper offers a number of ways for streamlining
common coding tasks to increase your productivity and
save your time. It extends and improves native Visual
Studio IntelliSense, enables you to view documentation
for types and their members right in the editor, provides
quick code transformations using context actions, and a lot
more.

Code Formatting and Ordering


ReSharpers Code Cleanup is an extended feature set that
combines code formatting with removal of redundant
code and applying team coding conventions. With Code
Cleanup, you can remove code redundancies, reorder
type members, migrate to recent versions of C#, and
perform a lot more tasks, all with a single shortcut. Two
default profiles, Full Cleanup and Reformat Code, can be
complemented by your custom task-specific profiles.

THE MOST INTELLIGENT EXTENSION FOR VISUAL STUDIO


Reordering type members
Stack trace explorer
Code style and formatting

Call and value tracking


Smart code generation
Extendable code templates

Solution-wide Refactorings
ReSharpers set of refactorings enhances the basic facilities
provided in Visual Studio in terms of number, usability
and scope of application. Each of the code refactorings
analyzes the entire scope of the code selection where it
is applied (which can be as wide as your whole solution),
including cross-language code, and uses this insight to
update the code structure in the most intelligent way
possible. All ReSharpers refactorings work in C#, and
the vast majority are also available in VB.NET, some in
JavaScript, XAML and other supported languages.

Automated code cleanup


Solution-wide refactorings
Localization assistance

Unit test management


Unit test runner
Extensions and plug-ins

Dedicated features include Move String to Resource, Find


Usages of Resource and more navigation actions. Combined
with refactoring support, inspections and fixes, you get a
convenient internationalization tool that saves you a lot of
time compared with manual handling of resources.

Unit Testing Support


ReSharper automatically detects NUnit, MSTest, QUnit
and Jasmine unit tests in your projects. Other unit testing
frameworks such as xUnit.net and MSpec are supported
via ReSharper plug-ins.

Code Generation and Templates


ReSharper provides multiple ways to automate writing
repetitive code. Code generation actions help create
properties, override members, implement formatting and
equality check methods. Live templates help you create
smart, quickly deployable snippets for code structures that
you write most frequently. Finally, you can use a method/
function, property, variable or even a class before its been
declared: ReSharper will suggest quick-fixes for generating
the corresponding symbol based on the usage.

With ReSharper, you can run and debug unit tests


from the editor or use the dedicated Unit Test Sessions
window, which is designed to help you run any number
of unit test sessions, either independently of each other
or simultaneously. Sessions can be composed of any
combination of tests.

Extensions and Command-line Tools


ReSharper extensions, which include full-fledged plug-ins,
sets of templates, SSR patterns, and more, are extremely
easy to discover, install, and update.

Painless Internationalization
ReSharper considerably simplifies working with localizable
resources by providing a full stack of features for .resx files
and resource usages in C# and VB.NET code, as well as in
ASP.NET and XAML markup.
If you like the way ReSharper inspects your code, you can
run code analysis or find code duplicates in your CI server
or version control system with standalone command-line
tools.

.NET CODE COVERAGE


Visual Studio integration
ReSharper integration
Coverage reporting

MSTest
NUnit
xUnit

MSpec
.NET Framework 1.0-4.5
Silverlight 4

Code coverage highlighting


Navigation to covering tests
TeamCity integration

Unit Test Runner and Code Coverage Tool

Filtering Coverage Tree On-the-fly

dotCover is a code coverage tool that enables .NET


developers to easily see how successful they are in
covering their applications with unit tests. Initially released
as a code coverage add-in to JetBrains ReSharper, dotCover
now includes ReSharpers unit test runner supporting
multiple unit testing frameworks.

Youre the one setting the scope of coverage analysis: you


can exclude a specific node from coverage calculation,
or all nodes except the current node, or filter out code
marked with specific attributes.

dotCover helps .NET developers by:


Providing a powerful unit test runner right in Visual
Studio.
Analyzing unit test coverage that is, calculating which
portion of your production code is covered with unit
tests.

Visual Studio Integration


dotCover calculates code coverage analysis in Visual Studio
2005, 2008, 2010 and 2012, presenting coverage details as
a tree view. You can easily navigate to source code from
coverage results to see which parts of your code are not
covered by unit tests. dotCover can also highlight covered
and uncovered code with background colors that you can
customize.

As soon as youve done any of this, dotCover instantly


recalculates percentages of covered and uncovered code.
This is useful to focus on production code, or filter out
code that youre not interested in testing right now.

Unit Test Runner


dotCover seamlessly integrates with ReSharpers unit test
runner to enable analyzing coverage of unit tests based on
MSTest, NUnit, xUnit, or MSpec framework.
However, even if you dont have ReSharper installed, you
can still use dotCover for running and analyzing coverage
of unit tests.

Console Runner
dotCover console runner allows you to perform coverage
analysis in console mode so that it can be made a part of
the Continuous Integration process.

The console runner provides most features that the Visual


Studio-integrated version has: you can run coverage
analysis, merge snapshots, generate and export reports.
In fact, the dotCover console runner ships with a free
version of JetBrains own Continuous Integration server,
TeamCity.

FREE .NET DECOMPILER


Decompiling to C#
Assembly management
Powerful navigation

Integration with symbol servers


IDE look and feel
Multiple supported file formats

Decompiling Any .NET Assemblies to C#


dotPeek is a free-of-charge standalone tool based on
ReSharpers bundled decompiler. It reliably decompiles any
.NET assembly based on .NET Framework 1.0 to 4.5 into
equivalent C# code.
The decompiler supports libraries (dll), executables (exe),
and Windows 8 metadata files (winmd). In addition, you can
have dotPeek open archives (including zip archives, vsix and
nupkg packages) and folders. When you point dotPeek at a
folder, it processes all its subfolders looking for files that it is
able to decompile.

Inheritance overview
Syntax highlighting
Code insight

Accurate search for usages


.NET Framework 1.0 to 4.5
ReSharper-like keyboard shortcuts

These include navigating to symbol declaration (even it


is declared in another assembly), derived symbols, base
symbols, end implementations of a symbol, or extension
methods available for a certain type.
Another set of ReSharper-inspired features helps you
jump to any class, interface, method, or property found in
currently loaded assemblies.
All these features support lowerCamelHumps syntax,
meaning that entering xmard is enough to locate and open
a type called XamlMarkupDeclaredElement.

Long-time users of JetBrains ReSharper will feel at home


working with dotPeek as it provides ReSharper-like navigation
and search, code insight, and familiar keyboard shortcuts.

Downloading Source Code Whenever Available


Decompiled code is better than nothing but sometimes you
can match an assembly to its source code, so why not take
advantage of this? dotPeek can identify local source code
based on PDB files, or fetch source code from source servers
such as Microsoft Reference Source Center or SymbolSource.

Navigation and Search in Decompiled Code

You can instantly see where and how particular code


symbols are referenced using search features such as Find
Usages and Highlight Usages in File.

dotPeek inherits a lot of features from ReSharper. These


include contextual and context-insensitive navigation,
usage search, as well as different code structure and
hierarchy views.

If youre looking for a higher-level overview of decompiled


code, be it a specific type or an entire subsystem, use File
Structure to highlight the contents of the current file, and
Type Hierarchy to glance through an inheritance chain that
a class or interface is involved in.

For example, for any decompiled symbol that you put the caret
on, dotPeek offers multiple contextual navigation options that
are all available via Navigate To drop-down menu.

.NET PERFORMANCE PROFILER


Performance profiling
Visual Studio integration
Remote profiling

Line-by-line profiling
Snapshot comparison
Source code preview

.NET Framework 2.0 - 4.5


Windows Mobile
Silverlight

ASP.NET
Windows services
WCF services

Powerful Profiler for .NET Applications

On-demand Profiling

dotTrace is a performance profiler for a variety of .NET


applications. Thanks to its insightful user interface and
robust processing of large snapshots, dotTrace profiler
helps you spot and remove performance bottlenecks easily
and reliably.

You can take a snapshot of application performance


anytime during its execution. dotTrace can be attached to a
running application for profiling, and detached as soon as
profiling information is captured. This enables investigating
performance issues in production environments where
you just cant afford to restart an application every time
you need to profile it.

dotTrace helps spot performance bottlenecks in


applications based on multiple .NET technologies, such as
.NET Framework up to version 4.5, Silverlight 4 and 5.
dotTrace is able to measure the performance of .NET
applications in sampling, tracing, or line-by-line profiling
mode, locally or on a remote machine.
One of the features that sets dotTrace apart is profiling
remote applications without having to deploy an entire
profiler infrastructure on the remote computer.

Profiling Unit Tests in Visual Studio


If you have ReSharper installed in Visual Studio, dotTrace
helps you easily start profiling unit tests from the code
editor or from ReSharpers unit test runner.

Even if you dont have ReSharper at hand, you can still


profile a native unit test runner provided by NUnit, MSTest,
or xUnit.
This becomes very useful when you are trying to find and
resolve performance issues on a machine that runs in
production environment. You can also control profiling
workflow from within the application using dotTrace
profiling API.

Profiling Modes
Depending on your needs you can choose from several
profiling modes:
Sampling profiling is the fastest method, but at the
expense of lower accuracy. It is extremely useful for quickly
getting a general idea of your applications performance,
and profiling for extensive periods of time. The output
snapshot reflects statistics for the observed call stacks.
Tracing profiling is a very accurate way of profiling based
on CLR notifications on entering and leaving functions.
It reports precise timing information and the number of
function calls.

Once you have taken a performance snapshot, take


advantage of different informative views such as Threads
Tree, Call Tree and Hot Spots to easily inspect profiling data
stored in your snapshot.

Line-by-line profiling collects timing information for each


statement, letting you zoom into functions that perform
significant algorithmic work. You can specify exactly which
methods you want to profile or profile all methods for
which dotTrace is able to locate symbol information.

.NET MEMORY PROFILER


Memory profiling
Visual Studio integration
Remote profiling

Snapshot comparison
Memory traffic analysis
Memory leak investigation

.NET Framework 2.0 - 4.5


IIS support
Silverlight

Windows services
WCF services
Any .NET process

Easy and Comprehensive User Interface

Comparing Memory Snapshots

Memory profiling has long been considered a practice


for hardcore developers only. However, dotMemorys
unique UI dramatically lowers the entry barrier and makes
memory profiling pretty straightforward. You can start
from a set of objects and zoom into particular instances
that represent the real cause of a memory problem.

Comparing two snapshots is the main way to find objects


that cause a memory leak. Use the comparison view to
find out how many objects were created between taking
snapshots and how many objects were collected.

Powerful Automatic Inspections


To ease your life, dotMemory automatically scans your
snapshot for most common types of memory issues.
These inspections can be a great starting point in analyzing
a snapshot if you dont know where to begin.

Analyzing Memory Traffic


Excessive allocations and garbage collections contribute to
significant memory management overhead. Use the traffic
view to understand what objects are created/collected
most intensively in your application and which functions
cause high memory traffic.

Multiple Views on Data


You can examine objects in the heap with multiple views.
Want to know how objects relate to each other?
What objects do they reference and through which fields?
Wondering what calls created these objects?
dotMemory has a view to answer all these questions.

Support for Various .NET Applications

Remote Profiling

Profile applications based on .NET Framework 2.0 to 4.5.1,


Silverlight 4, as well as Windows Store and IIS applications.

Profile applications not only on your local computer but on


any computer in your network or on the Internet. Remote
profiling is especially helpful when you need to profile
aweb application that runs on a production server.

Visual Studio Integration

Profiling API

dotMemory integrates into Visual Studio up to VS2013,


enabling you to start a memory profiling session straight
from the IDE.

Choosing the right moment for getting a snapshot is very


important for memory analysis. Use dotMemory API calls
to trigger taking snapshots right from your program code.

JetBrains is way more than a .NET tools vendor. We also provide top-class integrated
development environments for other popular languages and frameworks, as well as team
productivity tools such as a Continuous Integration server and an issue tracker.

The most intelligent Java IDE


IntelliJ IDEA practices a non-intrusive, intuitive approach to
help you write, debug, refactor, test and learn your code.
Thanks to its in-depth understanding of languages and
technologies, IntelliJ IDEA provides a second pair of hands
for you when you need them. It is compatible with many
project management tools and coexists with other popular
IDEs such as Eclipse.
Playing the game by your rules without ever getting in
your way thats our idea of a productive and pleasant
development.

Distributed continuous integration server

Agile bug tracking and project management tool

TeamCity provides out-of-the-box continuous unit


testing, code quality analysis, and early reporting on build
problems. A simple installation process lets you deploy
TeamCity and start improving your release management
practices in a matter of minutes.

Use advanced search queries, powerful commands and


extended shortcuts to manipulate your project features,
tasks or bugs. Customize all issue fields and create your own
workflow to fit your unique process.
Arm your agile team with the best visualization of your daily
activities, whether you follow a Scrum or Kanban process.

TeamCity supports Java, .NET and Ruby development


and integrates perfectly with major IDEs, version control
systems and issue tracking systems.

Ruby and Rails IDE

PHP IDE

RubyMine provides a wide range of essential tools for


Ruby development and Web development with Ruby on
Rails, all tightly integrated together to create a convenient,
customizable and productive environment.

Being a professional PHP IDE with code completion,


refactoring, code analysis, navigation, debugger and unit
testing support, PhpStorm also provides a unique user
experience for editing HTML, CSS, JavaScript, XML, as well as
working with SQL and various version control systems.

To stand out from the crowd, RubyMine provides an


intelligent code editor, with complete Ruby coding assistance,
a graphical debugger, integrated VSC support, and more.

Import your projects from any issue tracker and


enjoy lightning-fast, efficient bug tracking and project
management for your agile projects!

For a lightweight HTML and JavaScript IDE with no PHP,


check out JetBrains WebStorm.

Headquarters and International Sales:


sales@jetbrains.com

North American Sales:


sales.us@jetbrains.com

JetBrains s.r.o.
Na hebenech II 1718/10, 14700
Prague, Czech Republic
Tel: +420 241 72 2501
Fax: +420 241 722 540

East Coast
324 New Brooklyn Road
Berlin, NJ 08009
Tel: +1 609 714 7883
Fax: +1 866 838 6784

3.14 (MKT-2753)

West Coast
1900 South Norfolk St. Suite 350
San Mateo, CA 94403
Tel: +1 650 577 2345
Fax: +1 866 838 6784

You might also like