<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">Resharper - SeeSharp</title>
  <icon>http://www.hightech.ir/favicon.ico</icon>
  <logo>http://www.hightech.ir/favicon.png</logo>
  <updated>2009-04-09T09:31:00</updated>
  <subtitle type="html">A C# development blog</subtitle>
  <id>http://www.hightech.ir/tags/resharper/atom</id>
  <link rel="alternate" type="text/html" hreflang="en" href="/tags/resharper/atom"/>
  <link rel="self" type="application/atom+xml" href="http://www.hightech.ir/Tags/Resharper/ATOM"/>
  <generator uri="http://oxite.net" version="1.0">Oxite</generator>
  <entry>
    <title type="html">Resharper 4.5 Released</title>
    <link rel="alternate" type="text/html" href="http://www.hightech.ir/SeeSharp/resharper-45-released"/>
    <id>http://www.hightech.ir/SeeSharp/resharper-45-released</id>
    <updated>2009-10-18T14:24:05.85</updated>
    <published>2009-04-09T09:31:00</published>
    <author>
      <name>HEskandari</name>
    </author>
    <category term="Resharper" />
    <content type="html" xml:lang="en">
      &lt;p&gt;Great guys at &lt;a href=&quot;http://www.jetbrains.com/&quot;&gt;JetBrains&lt;/a&gt; have release next version of their productivity tool, Resharper. It seems this release fixes performance and memory usage issues and performance is tuned for big projects. &lt;a href=&quot;http://www.jetbrains.com/resharper/features/newfeatures.html&quot;&gt;According&lt;/a&gt; to JetBrains, following features are significantly faster now:&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;Renaming Symbols&lt;/li&gt;
    &lt;li&gt;Finding Usages&lt;/li&gt;
    &lt;li&gt;Creating Symbol from Usage&lt;/li&gt;
    &lt;li&gt;Analyzing large XAML files&lt;/li&gt;
&lt;/ul&gt;
&lt;br/&gt;
&lt;p&gt;I've been using their nightly builds for a while and there are a couple of nice new features added to version 4.5. Things like enforcing a naming convention, native support for MSTest unit testing, and copying XML comment from existing (base class / interfaces) sources are some of them. To give it a try, download a trial copy &lt;a href=&quot;http://www.jetbrains.com/resharper/download/index.html&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
    </content>
  </entry>
  <entry>
    <title type="html">Resharper : The Most frequently used feature</title>
    <link rel="alternate" type="text/html" href="http://www.hightech.ir/SeeSharp/resharper-most-frequently-used-feature"/>
    <id>http://www.hightech.ir/SeeSharp/resharper-most-frequently-used-feature</id>
    <updated>2009-10-19T10:29:22.89</updated>
    <published>2008-11-17T16:49:00</published>
    <author>
      <name>HEskandari</name>
    </author>
    <category term="Resharper" />
    <category term="AddIns" />
    <content type="html" xml:lang="en">
      &lt;p&gt;A while a go, &lt;a href=&quot;http://rorybecker.blogspot.com/&quot;&gt;Rory&lt;/a&gt; asked me to blog about Resharper add-in for Visual Studio.NET and which shortcut keys I use the most. This one has been waiting on my draft list for a couple of weeks now. This post is about Resharper shortcuts I mostly use.&lt;br /&gt;&lt;br /&gt;Resharper is &lt;a target=&quot;_blank&quot; href=&quot;http://devexpress.com/CodeRush&quot;&gt;one&lt;/a&gt; the most advanced and useful add-in available for Visual Studio .NET. I've started using the tool when they published their release for Visual Studi 2003. Back then, Resharper added lots of feature and brought productivity to the IDE which without them, your programming life would have been a nightmare.&lt;/p&gt;

&lt;p&gt;The problem with Resharper though, is that it has become so big and featureful, that is won't be possible to use it in large scale projects. We have a bloated Solution containing about 80 projects that started back in 2003 with only 10-12 projects. When I open the project in VS with Resharper running, the files with 2-3K LOC make Resharper run out of memory. 2-3K LOC might sound unrealistic to you, but automatically generated codes like DataSets or Forms code behinds are usually this large. So, it'd be a good idea if we could disable some Resharper features to gain some more speed, e.g. disabling code analysis in .Designer files, disabling XAML analysis, etc.&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;As said before, there are a lot of features in Resharper, which makes your programming experience a pleasant one. Here I'm only pointing to some of the ShortCut keys I mostly use.&lt;br /&gt;&lt;/p&gt;

&lt;br/&gt;&lt;span class=&quot;subtitle&quot;&gt;Find Usage Window (Alt + F7)&lt;/span&gt;
&lt;p&gt;I'm Sure you've tried to figure out how / where an interface is implemented, or where instance of a certain class is being used, or other similar scenarios. If you use plain VS, you have no other choice than to use &quot;Find All References&quot;. That will work, but it takes time every time you do a search like this. This is due to the fact that VS does not keep an index of your application structure, but since Resharper does, you'll gain a lot of speed when doing these kind of operation.&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;Also, the &quot;Find Usage Window&quot; is more rich in Resharper than VS. You can sort and group the results based on Namespace, Usage, File, Folder, etc. and filter by Read, Writer, Invocation, etc. but in VS all you see is a flat search result. One of the great things about Find Usage function is that it actually finds the usage in Xaml code too!&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.hightech.ir/images/BlogPics/Resharper_FindUsageResults.jpg&quot;&gt;&lt;img alt=&quot;Resharper-FindUsageResults&quot; src=&quot;http://www.hightech.ir/images/BlogPics/Resharper_FindUsageResults.jpg&quot; width=&quot;516&quot; height=&quot;360&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;span class=&quot;subtitle&quot;&gt;Using Hints and Red / Yellow Bulb (Alt + Enter)&lt;/span&gt;
&lt;p&gt;Resharper has a good way of letting you know that you can do something better, by displaying &quot;Hints&quot;. Hints let you know if you've forgotten to import a namespace, if there's a refactoring available or suggest a context action. There are lots of things you can do in Resharper, just by pressing Alt + Enter! Some of them are :&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Change scope of the Class or Method &lt;/li&gt;
  &lt;li&gt;Create overload for a method / Check if the variable is null &lt;/li&gt;
  &lt;li&gt;Create derived types &lt;/li&gt;
  &lt;li&gt;Import missing namespace / remove unused namespace &lt;/li&gt;
  &lt;li&gt;Implement an interface / abstract class &lt;/li&gt;
  &lt;li&gt;Change property to Automated property and vice versa &lt;/li&gt;
  &lt;li&gt;Invert if statement / Convert to conditional statement and vice versa &lt;/li&gt;
  &lt;li&gt;Join / Split declaration and assignment of the variable &lt;/li&gt;
  &lt;li&gt;Introduce variable / use var keyword &lt;/li&gt;
  &lt;li&gt;Generate body of the switch statement &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;...and a lot more. Depending on where the cursor is in the editor, where you click and the code you have written, you may get different options.&lt;/p&gt;

&lt;span class=&quot;subtitle&quot;&gt;Goto Type / File (Ctrl + N, Ctrl + Shift + N)&lt;/span&gt;
&lt;p&gt;If you're looking for a specific file in your large project or if you're using multiple class per file strategy, you might get lost easily. If you need to know where that file is located, or in which file you class resides, you can use these shortcuts to get you there. The &quot;Goto Type&quot; function has support for a feature called CammleHumps. Using this feature, if you're looking for OrderApprovalService, you can search for OAS instead and Resharper will find it for you.&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.hightech.ir/images/BlogPics/Resharper_FindByType.jpg&quot;&gt;&lt;img alt=&quot;FindByType&quot; src=&quot;http://www.hightech.ir/images/BlogPics/Resharper_FindByType.jpg&quot; width=&quot;441&quot; height=&quot;175&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;span class=&quot;subtitle&quot;&gt;Code Completion and Type Lookup (Ctrl + Space, Ctrl + Alt + Space)&lt;/span&gt;
&lt;p&gt;When you're working with large libraries you may easily get lost. Sometimes you know the name of type you're going to use, but can't remember the darn namespace! This shortcut will help you find the type you are looking for in ALL the namespaces in an easy to use fasion.&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.hightech.ir/images/BlogPics/Resharper_FindByCtrlSpace.jpg&quot;&gt;&lt;img alt=&quot;FindByCtrlSpace&quot; src=&quot;http://www.hightech.ir/images/BlogPics/Resharper_FindByCtrlSpace.jpg&quot; width=&quot;427&quot; height=&quot;188&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;span class=&quot;subtitle&quot;&gt;Code Generation (ALT + Ins, Ctrl + J)&lt;/span&gt;
&lt;p&gt;The code generation feature in Resharper is just great. You can use the primary code generation function by ALT + Ins that will let you generate : &lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Constructors &lt;/li&gt;
  &lt;li&gt;Properties / Readonly Properties from backing fields &lt;/li&gt;
  &lt;li&gt;Implement Method / Property stubs for an Interface &lt;/li&gt;
  &lt;li&gt;Override base class Methods &lt;/li&gt;
  &lt;li&gt;Provide equality implementation (Equality Operators, IEquatable&amp;lt;T&amp;gt; interface, overriding Equals and GetHashCode methods) &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;While this is great, Resharper gives you the power to write your own snippets! A lot of people have already created snippet templates for Resharper to create Unit tests, Mocks, NHibernate, ActiveRecord and WPF stuff, etc.&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.hightech.ir/images/BlogPics/Resharper_CodeGeneration.jpg&quot;&gt;&lt;img alt=&quot;Resharper-CodeGeneration&quot; src=&quot;http://www.hightech.ir/images/BlogPics/Resharper_CodeGeneration.jpg&quot; width=&quot;255&quot; height=&quot;267&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can download Resharper templates on Joey Beninghove's &lt;a target=&quot;_blank&quot; href=&quot;http://joeydotnet.com/blog/archive/2007/04/14/ReSharper-Template-Library---Updated.aspx&quot;&gt;blog&lt;/a&gt;, or see what other people use on StackOverflow &lt;a target=&quot;_blank&quot; href=&quot;http://stackoverflow.com/questions/186970/what-resharper-40-live-templates-for-c-do-you-use&quot;&gt;page&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;

&lt;span class=&quot;subtitle&quot;&gt;Summary&lt;/span&gt;
&lt;p&gt;There is a &lt;a target=&quot;_blank&quot; href=&quot;http://www.jetbrains.com/resharper/docs/ReSharper40DefaultKeymap.pdf&quot;&gt;document&lt;/a&gt; on JetBrain's website that shows all the ShortCut keys you'll ever need to know. Intense Resharper users might need to hang it on their wall. There are lots of other features I use like Unit Test Runner, Stack Trace browser, File Structure window, and ToDo List, but that's for another post. Do you use productivity tools too? Which one? Which feature do you use the most?
    </content>
  </entry>
</feed>
