Resharper進階一:簡要介紹

面對這樣一個問題:爲什麼.net能夠比java更加快速的完成開發?恐怕最大的優勢在於Microsoft提供了一個無比強大的IDE。它的強大在於適用於各個層次的開發人員。當你還是一隻小小鳥的時候,可以學會 drag&drop,當你開始寫代碼的時候,你會發現設計器生成的代碼是多麼愚蠢和臃腫。當你自己能夠寫出乾淨的代碼時,可能再也不想切換到設計器中去了(切換/F7)。我相信我們中的大部分人,即使是最資深的Windows開發人員,用VS寫代碼比用記事本的效率要高很多,因爲我們畢竟需要 IDE的幫助以提高我們的生產力。但是在那個沒有Resharper的年代裏,你的生產力頂多停留在兩個輪子的時代,另兩個輪子,只有在你熟悉了 Resharper以後才能轉動起來。

Resharper能帶給你的效率提升如此之高,以至於在我訂閱的所有.net專家的blog裏面,所有的人都在關注它。要知道他們都不是一般的 coder,大多數是CTO或者技術總監。當我三個月前開始使用Resharper時,想要搜到一些中文的介紹,或者是經驗性的文章卻十分困難。大多數人似乎不關心它的存在。博客園裏充斥着因爲安裝Resharper而拖慢系統,導致VS不穩定,機器響應速度下降,VS啓動速度下降等等的論調。幸運的是,這些在我這裏都沒有遇到,也許是因爲2G的內存的緣故,反正devenv.exe所佔的200~300m內存並沒有使我感覺機器在變慢,而且我的VS幾乎是一直運行中,沒有一會關閉一會打開的時候,所以我只需要忍受Resharper在加載時的半分鐘初始化一次就夠了。相比於它能帶給你的效率提升,這些問題都是微不足道的(一家之言)。

如果你在VS環境下寫代碼時幾乎不用快捷鍵,那我覺得你沒有必要往下看了。因爲Resharper是通過快捷鍵來提升你的效率的。但是相信我,如果你曾經在星際中一遍一遍被人虐的話,你應該能體會到快捷鍵帶來多麼大的變化。

首先在安裝完Resharper之後,你主要通過三種方式用到或看到它:

一是在菜單欄上,如果是3.0版本的話,它會默認的屏蔽掉“重構”菜單欄,也就是說你按Alt+R的時候,彈出的是Resharper的下拉菜單而不是“重構”,爲什麼?因爲你不再需要“重構”菜單了。如果是以前版本,比如2.0,似乎需要您手工的完成這一步,方法如下:

工具——自定義——重排命令,然後把“重構”菜單刪除,毫不猶豫地!

你可以簡單地這樣體驗一下:Alt+R,N,回車,就可以在當前項目中添加一個類,還記得以前你是怎麼做的嗎?在解決方案資源管理器中選中一個項目,然後右鍵,在長長的彈出菜單中選擇:添加——類,如果你的電腦夠慢的話,在3秒鐘之後纔會彈出一個對話框來問你文件名。

另一種方式是:看到豎直滾動條了嗎?在它的右邊多出一個邊框來,上方是一個“綠色/黃色/紅色”的方框,而邊框上會出現一道一道紅的橙的橫槓。什麼意思:當紅槓出現時,表明你的代碼在那個位置出現了錯誤,如果是橙槓,表明那是一個警告,多半是沒有檢測null值或者聲明後未使用之類。

如果當前文檔的所有錯誤和警告都得到了適當的處理,則不會再出現橫槓,而最頂上的方框也會變成綠色;

如果沒有錯誤但有警告,則是黃色,這時編譯可以通過;

如果那個方框是紅色,則表示有編譯通不過的錯誤,這時你應該通過點擊紅槓,去修改您的代碼。如果你即使編譯,也會報錯並無法生成。這樣做使你在寫代碼時就能及時得發現你的錯誤,而不需要等到編譯時。這樣做也使你的效率得到了提高。因爲編譯至少要耗去您半分鐘的時間,並且強烈的讀寫您的硬盤,特別在你的硬盤轉速慢時,比如筆記本上,這一過程是那麼的令人心痛。

第三種接觸到Resharper的自然是快捷鍵了。右鍵菜單當然也有很多的功能,但是那太弱智了,太慢了。我們需要的是專業,我們用的工具定位不是打毛衣的大媽,而是開發的專業人員,如果你連快捷鍵都無法掌握,那真的得對你的開發技巧打一個大大的問號。試想一下這個場景,當你腦子裏冒出這個念頭,啊,這個類,應該提出接口來,要這個方法,這個,和這個,還有這兩個事件。啊,不行,我現在就得提,不然就忘了。我得新建一個接口,點哪個來着。啊,在哪裏新建……建好了,對了我要提取哪幾個方法來着。(我暈死)許多時候你的念頭都是一閃而過的,需要你的操作也相應的跟上。這個操作在Resharper就是,把光標移動到類名上,然後點Ctrl+Shift+R,除了你想要的提取接口,其他的重構功能也一目瞭然。而且遠比VS自帶的要快。

至於右鍵,如果你剛開始實在記不住快捷鍵,只能使用它了,或者Alt+R,實際上它也要比右鍵菜單快一點點。

真正激動人心的是在隨着你逐漸熟悉Resharper以後,能夠帶來的諸多方便之處,我將會在接下來的一系列隨筆中講述。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章