JetBrains ReSharper Ultimate是一款非常好用的由JetBrains推出代碼生成工具。ReSharper包括代碼分析、高亮顯示錯(cuò)誤代碼以及代碼快速更正等功能,讓用戶(hù)能夠借助Visual Studio更好地進(jìn)行編程和開(kāi)發(fā)。ReSharper是一款支持C#,VB.NET,ASP.NET,XML,和XAML的編輯器,有需要的用戶(hù)快來(lái)獲取吧!

JetBrains ReSharper Ultimate安裝教程
下載完成后雙擊安裝包,在安裝界面,把你需要安裝的選擇為 Install (安裝),不需要的選擇 Skip(跳過(guò)),需要注意ReSharper 需要和 Visual Studio 版本保持一致,然后勾選同意,最后點(diǎn)擊 Next 按鈕,如下圖所示。

在下一個(gè)界面直接選擇右下角的 Install 按鈕,然后開(kāi)始安裝 ReSharper,安裝過(guò)程大概1~2分鐘。安裝成功會(huì)在左下角會(huì)顯示

代表安裝成功,最后點(diǎn)擊 Exit 按鈕退出即可。
JetBrains ReSharper Ultimate使用教程
設(shè)置
智能提示
安裝完畢后,IDE 的智能提示(Intellisense)便會(huì)默認(rèn)使用 Resharper 的提示,不知道為什么,我一直不太喜歡它的提示。改過(guò)來(lái),是在Option的窗口中,也可以自定義

快捷鍵
強(qiáng)烈建議你使用 Reshaper 的快捷鍵,不要擔(dān)心 Reshaper 會(huì)把你原來(lái)的快捷鍵設(shè)置給覆蓋了,因?yàn)槿绻硞€(gè)快捷鍵和 VS 是沖突的,Reshaper會(huì)讓你自己選擇需要使用 VS 還是 Resharper 的快捷鍵,看如下界面:

注意,不要選擇 Apply to all Reshaper shortcuts,如果選擇了,這個(gè)界面將不會(huì)再出現(xiàn)了,而一般情況下,你會(huì)更喜歡在沖突的時(shí)候讓自己做決定。
當(dāng)然,如果你一定要使用 VS 原來(lái)的快捷鍵,那么,就應(yīng)該在 Option 的如下窗口中選中紅框內(nèi)的選項(xiàng),然后抖抖手,點(diǎn) Save:

與 StyleCop 的整合
如果我們同時(shí)安裝了StyleCop ,則 Resharper 會(huì)整合提示你當(dāng)前的代碼是否符合你的 StyleCop 設(shè)置。
PS:以下配置基于 StyleCop 4.7 和 Reshaper 7.1.3。在某些情況下,版本較舊的情況下,StyleCop 和 Reshaper 沒(méi)有整合到一起,使得你在代碼規(guī)范的道路上不能使用 Resharper 的提示。
整合后,我們可以在 Option 界面的 Code Eidting-〉Code Cleanup 界面,Add 一個(gè)新規(guī)則,然后,在新規(guī)則中可以看到 stylecop 選項(xiàng),如下:

經(jīng)過(guò)了這些設(shè)置后,IDE 就會(huì)根據(jù)這個(gè)設(shè)置的標(biāo)準(zhǔn)進(jìn)行提示,如下:

Reshaper設(shè)置規(guī)則和StyleCop沖突如下:

那么,Reshaper 的 StyleCop 設(shè)置規(guī)則和 StyleCop 本身的設(shè)置規(guī)則能否變成一個(gè)呢?答案是:很遺憾,不能!你必須兩頭設(shè)置,使其變成一致。
不喜歡某個(gè)提示的解決方法
是的,你可以修改設(shè)置。如下:

在這個(gè)例子中,我不喜歡將下劃線(xiàn)開(kāi)頭的變量作為 warning 進(jìn)行提示,那么就可以選擇最下方的 change settings…… 來(lái)修改,選擇后,如下:

File Structure
你是否惱怒與查看類(lèi)的結(jié)構(gòu)要去戳這個(gè)下拉框,見(jiàn)下圖:

按組合鍵 Ctrl + Alt +F,就會(huì)出現(xiàn) Resharper 的 File Structure 窗口,見(jiàn)下圖:

很方便的讓你看到你的整個(gè)成員變量窗口。
萬(wàn)能的 Alt + Enter
如果我們使用了 Reshaper 的快捷鍵設(shè)置,在每個(gè)出現(xiàn)提示的地方,點(diǎn)擊 Alt + Enter 組合鍵,就會(huì)彈出 Resharper 建議你要進(jìn)行的操作,見(jiàn)下圖:

在這個(gè)提示里,Reshaper 告訴我們沒(méi)有引用 System.Text 這個(gè)命名空間,這個(gè)時(shí)候,點(diǎn)擊 Alt + Enter 就會(huì)自動(dòng) Using 該命名空間了;
自動(dòng)完成語(yǔ)法,見(jiàn)下圖:

在 StringBuilder 上 Alt+Enter 組合鍵,就會(huì)提示你此處要用 var。
或者,又比如在 if 上使用組合鍵,就會(huì)提示你用三元運(yùn)算符,見(jiàn)下圖:

總之,Alt + Enter 是萬(wàn)能的,看到提示,就使用它,你常常會(huì)得到有意義的幫助來(lái)提升你代碼的質(zhì)量。一些復(fù)雜的 LINQ 你不會(huì)寫(xiě),使用 Alt+Enter 就會(huì)自動(dòng)幫你將一些代碼轉(zhuǎn)換成很牛叉的 LINQ,看上你好像是個(gè) LINQ 高手一樣,見(jiàn)下圖:

這個(gè)小燈就是提示,如果不想使用 Alt + Enter,就用鼠標(biāo)猛戳這里,也會(huì)出現(xiàn) Resharper 的建議。
Find Usage
Find Results
在某個(gè)類(lèi),或者變量,或者方法上點(diǎn) Find Usage ,或者戳快捷鍵 Alt+F7,就是把你選中類(lèi)或變量或方法全部被引用到的地方顯示出來(lái)。話(huà)說(shuō),VS2012之后的查找和查找引用功能簡(jiǎn)直弱爆了。總之,這個(gè)功能也是 Reshaper 的一個(gè)亮點(diǎn),見(jiàn)下圖:

查找賦值
想查找某個(gè)屬性在那些地方被賦值,我把此快捷鍵設(shè)成了 Alt+F8 - Value Origin,或者你可以 鼠標(biāo)右鍵,選擇 Inspect – Value Origin


如下圖查找結(jié)果,共有2處地方對(duì)它進(jìn)行過(guò)賦值,見(jiàn)下圖:

萬(wàn)般兼重構(gòu)
一個(gè)永遠(yuǎn)寫(xiě)出完美代碼的程序員永遠(yuǎn)只存在于一個(gè) 白癡Leader 的頭腦里,作為碼畜的我們都知道,代碼是重構(gòu)出來(lái)的,永遠(yuǎn)不是設(shè)計(jì)出來(lái)的。所以,你永遠(yuǎn)需要 Ctrl + Shift + R,見(jiàn)下圖:

Cleanup Code
寫(xiě)了一個(gè)齷蹉的類(lèi)之后,就是讓它順便變干凈以及變規(guī)范,這個(gè)時(shí)候,我們需要右鍵 Cleanup Code (Ctrl + Alt + F):

快速完成代碼
使用 VS 提供的智能感知和 TAB 鍵,能夠快速完成代碼,比如輸入代碼 prop,然后按 Tab 鍵,就會(huì)自動(dòng)創(chuàng)建一個(gè)屬性,不過(guò) Resharper 提供了另外的選擇,看上去可以完成更多的代碼。
按組合鍵 Alt + Insert,出現(xiàn)如下窗口:

話(huà)說(shuō)我從來(lái)沒(méi)有使用 VS 的方法自動(dòng)完成過(guò)創(chuàng)建一個(gè)構(gòu)造器,而使用 Resharper 就可以輕松實(shí)現(xiàn)。
Resharper 提供了一種選擇,讓我們自己設(shè)置 Cleanup Code 的規(guī)范。
JetBrains ReSharper Ultimate功能
代碼分析
ReSharper可提供對(duì)C#, XAML, XML, ASP.NET和ASP.NET MVC的持續(xù)的代碼質(zhì)量分析,甚至在用戶(hù)對(duì)之進(jìn)行編譯以前即可檢測(cè)到錯(cuò)誤和問(wèn)題。ReSharper可對(duì)用戶(hù)的代碼提供900多種代碼檢驗(yàn),用戶(hù)便可即刻 察覺(jué)到其當(dāng)前文件或者甚至整個(gè)解決方案中是否包含了錯(cuò)誤和故障。
高亮顯示不正確和迅速更改
ReSharper能在用戶(hù)鍵入的情況下即對(duì)代碼開(kāi)展剖析,并高亮顯示不正確,用戶(hù)乃至不用開(kāi)展編譯程序。其乃至能對(duì)絕大多數(shù)不正確迅速得出改動(dòng)提議,以協(xié)助用戶(hù)迅速解決困難。
優(yōu)秀的代碼幫助
ReSharper充足的考慮到到編號(hào)的各個(gè)領(lǐng)域,以協(xié)助用戶(hù)提高工作效率和省時(shí)省力。其不僅對(duì)VisualStudio的例如代碼編譯程序這類(lèi)的原生態(tài)作用開(kāi)展了拓展和改善,還能夠促使用戶(hù)根據(jù)應(yīng)用很多的代碼模版迅速轉(zhuǎn)化成代碼,在編輯器中查詢(xún)種類(lèi)和她們的組員的文本文檔,應(yīng)用稱(chēng)之為“前后文姿勢(shì)”(contextactions)實(shí)行代碼變換,也有別的大量的。
諸多的代碼重構(gòu)
與VisualStudio2005/2008/2010對(duì)比,ReSharper出示了更豐富的全自動(dòng)代碼重構(gòu)作用。用戶(hù)可應(yīng)用很多不一樣的重新構(gòu)建方式以開(kāi)展重新命名,挪動(dòng),安全刪除標(biāo)志;導(dǎo)進(jìn)和內(nèi)聯(lián)字段名、自變量和主要參數(shù)這些。
導(dǎo)航欄和檢索
不管何時(shí)你需要搜索某一種類(lèi),字段名,方式,或一切別的的標(biāo)志,ReSharper出示了多種多樣完成方式,能夠根據(jù)名字搜索一個(gè)標(biāo)志,在代碼從引入位置導(dǎo)航到標(biāo)志的申明部位,搜索并高亮顯示標(biāo)志使用方法。應(yīng)用集成化到VisualStudio用戶(hù)插口的尤其專(zhuān)用工具對(duì)話(huà)框,ReSharper能夠使你見(jiàn)到詳細(xì)的種類(lèi)承繼樹(shù)和文檔構(gòu)造。
集成化單元測(cè)試
ReSharper全自動(dòng)偵察代碼中的單元測(cè)試,并出示詳細(xì)的單元測(cè)試適用。你可以從代碼編輯器中運(yùn)作和調(diào)節(jié)檢測(cè)。另外,會(huì)出示一個(gè)專(zhuān)用型的單元測(cè)試資源對(duì)話(huà)框以讓用戶(hù)見(jiàn)到其單元測(cè)試的結(jié)果和再次運(yùn)作單元測(cè)試。
ASP.NET編輯
運(yùn)用不正確高亮顯示,迅速調(diào)整,前后文姿勢(shì),代碼幫助,導(dǎo)航欄,重新構(gòu)建,和別的特點(diǎn),用戶(hù)能夠愉快而高效率的編輯ASP.NET文檔。應(yīng)用ReSharper,你能不會(huì)受到打攪的在ASP.NET中編輯和重新構(gòu)建C#代碼,如Web控制特性和事件,數(shù)據(jù)庫(kù),和內(nèi)容定位點(diǎn)符。
NAnt和MSBuild腳本制作編輯
其高級(jí)編輯作用以前只對(duì)于C#可以用,后拓展到NAnt和MSBuild腳本制作。若用戶(hù)安裝了ReSharper,則只需其在VisualStudio。NET中開(kāi)啟一個(gè)建立的腳本文件,便可馬上獲得徹底代碼幫助。
VB作用
ReSharperforVisualStudio2005/2008/2010拓展了其對(duì)VisualBasic代碼(包含應(yīng)用VB撰寫(xiě)的ASP網(wǎng)頁(yè)頁(yè)面)的一系列作用。在其中包括了ReSharper的全部導(dǎo)航欄和檢索作用,及其英語(yǔ)的語(yǔ)法高亮度,文本文檔迅速搜索等。其較大 的好處則是針對(duì)必須開(kāi)發(fā)設(shè)計(jì)混和了C#和VB的新項(xiàng)目的.NET開(kāi)發(fā)者來(lái)講的。
XAML編輯
擁有ReSharper,用戶(hù)不論是在開(kāi)展Silverlight,WPF,或是WindowsPhone7開(kāi)發(fā)設(shè)計(jì)時(shí),均可得到額外的XAML編輯幫助,包含及時(shí)代碼剖析,代碼重構(gòu),代碼轉(zhuǎn)化成和調(diào)節(jié),及其迅速的解決方法范疇導(dǎo)航欄。