java與.net比較學習系列(1) 開發環境和經常使用調試技巧

最近由於公司項目要由.net平臺轉到java平臺的緣由,以前一直用.net的我不得不開始學習java了,剛開始聽到說要轉java的時候很抗拒,由於我想專一在.net平臺上,不過這樣也並不徹底是壞事,經過接觸java開發也許能拓展個人開發思想和知識面,因此這也許是個學習java的機會。html

由於以前歷來沒有作過java開發,因此如今不得不從最基礎的開始,並且由於作.net已經有幾年了,習慣了VS的良好的操做體驗,因此剛開始接觸Eclipse有不少的不適應。這個系列我想經過與.net比較的方式來學習,一來分清java與c#的區別,二來也許能加深對.net的理解,第三是但願想轉java的朋友能經過這個系列少走彎路。java

工欲善其事,必先利其器。因此這個系列的第一篇我想總結的是它們開發環境以及經常使用的調試技巧的比較。我想從如下幾點來進行總結。程序員

1,開發工具c#

2,經常使用操做快捷鍵多線程

3,經常使用調試技巧函數

一,開發工具

.net的開發IDE工具就不用我多說了,就是「全球最牛的IDE」 Visual Studio(下稱VS),而java開發通常選擇Eclipse,固然Eclipse是免費的。下面經過一張圖來講明它們之間界面和佈局上的差別。工具

VS:佈局

image

Eclipse:學習

image

咱們能夠看到,從界面佈局上,二者沒有太多差別,只是VS的項目管理在右邊,而Eclipse的項目管理在左邊,固然,這些窗口也是能夠拖拽的,依據本身的操做習慣來。開發工具

二,經常使用操做快捷鍵

爲了對比更加清晰,下面我用一張表格來分別列出VS和Eclipse經常使用操做的快捷鍵。

注:我這裏用的VS版本是2010,Eclipse版本是Juno SR2

這份表格是基於我以前寫的一篇博客進行提煉修改的,原文章地址:提升vs操做效率,vs 2008與vs 2010快捷鍵總結。各位朋友若是有一些好的操做技巧也歡迎提出。

  Visual Studio Eclipse 操做
編輯      
  CTRL+E+C CTRL+/ 註釋,註釋選中的代碼(若是沒有選中任何行,則默認註釋當前行代碼)
  CTRL+E+U CTRL+/(再按) 取消註釋,取消註釋選中的代碼
  CTRL+E+D CTRL+SHIFT+F 格式化整個文檔
  CTRL+E+F   格化式選中代碼
  CTRL+J ALT+/ 列出成員
  CTRL + SHIFT + 空格 ALT+/ 提示鼠標所在方法的參數類型和個數
  CTRL+M+L CTRL+O 快速OutLine
  CTRL+M+O
  CTRL+. 不適用 自動using命名空間
  SHIFT+ALT+ENTER   全屏顯示
  CTRL+K+S   外側代碼,能夠加region預處理或者try...catch...等
       
導航      
  F12 F3 轉到定義
  CTRL + TAB CTRL+E 快速切換活動窗口
  CTRL + SHIFT + F CTRL+F 顯示在文件中查找和替換對話框
  SHIFT+ALT+ENTER CTRL+M 全屏無干擾模式
  CTRL+(→或←) 同VS 以單詞爲單位進行左,右跳轉
  SHIFT+CTRL+(↑或↓) 暫無 跳轉到該單詞上次或下次出現的地方
  CTRL+[SHIFT]+] CTRL+SHIFT+P 匹配括號移動(包括(),{},[],」」)
  SHIFT+F12(查找全部引用) CTRL+T 轉到接口的實現類
  CTRL+-   返回到上次編輯的位置
  CTRL+,   定位到
       
調試      
  F5 F11 調試運行
  CTRL+F5 CTRL+F11 非調試運行
  F6 不適用 編譯整個解決方案
  SHIFT+F6 不適用 編譯當前選擇的工程
  SHIFT+F5 CTRL+F2 中止調試
  F9 CTRL+SHIFT+B(break) 插入或取消斷點
  CTRL+SHIFT+F9 暫無 取消全部斷點
  F10 F6 單步執行,但直接執行函數中調用部分而不分步
  F11 F5 單步執行,而且單步執行函數中調用部分
  SHIFT+F11 F7(繼續運行爲F8) 執行當前函數剩餘部分代碼
  CTRL+F10 CTRL+R 運行到光標處

另外,Eclipse有一些本身獨特的快捷鍵,也很是好用,以下:

CTRL+SHIFT+R(resource):快速打開資源

ALT+SHIFT+R(rename):快速重命名方法和屬性

CTRL+.和CTRL+1:定位到錯誤及快速修改

三,經常使用調試技巧

之因此把調試技巧單獨列出來總結,是由於調試技巧對於咱們程序員來講很是重要,運用得好的話能夠大大提升咱們的開發效率。其實對於VS的調試技巧,我相信咱們作.net開發的大部分都已經很熟悉了,下面我把VS中很是經常使用的幾個調試技巧拿出來與Eclipse進行比較,看看Eclipse有沒有相應的解決方法。

1,斷點

提及調試,首先確定是設置斷點了,因此斷點是全部調試的基礎。固然斷點又分不少種不一樣的類型,比較經常使用的就是條件斷點和斷點過濾器了。首先來看普通斷點吧。

1)普通斷點

設置斷點,VS爲F9,而Eclipse爲CTRL+SHIFT+B(break)

image image

命中斷點後,接下來咱們能夠選擇F10單步運行,F11進入調用函數內部,或Shift+F11從調用函數返回到函數調用處。而對於Eclipse,單步運行是F6,進入調用函數內部是F5,返回到函數調用處是F7。

2)條件斷點

條件斷點通常用在for循環中,以下圖:

image

image

3) 斷點過濾器

斷點過濾通常用在調試多線程程序的時候,能過斷點過濾咱們能夠指定調試哪一個線程,以下圖:

image

image

2,運行到指針

這個調試技巧也很是有用,當咱們在調試一個很長的方法,咱們不關心中間的邏輯,我但願斷點直接運行到某一行的時候,這個技巧就派上用場了。以下圖。

注意,這個技巧在VS中是快捷鍵CTRL+F10,而在Eclipse中我尚未發現怎麼去實現這個技巧,但願知道的朋友能夠補充一下。

image

image

3,即時窗口

這個也用得很是多,它便可以查看變量的值,也能夠直接在裏邊寫代碼執行。以下圖。

image  image

不過,Eclipse裏的即時窗口沒有VS的好用。

4,附加進程

附加進程有兩個好處,第一,提升調試效率,我通常習慣先以非調試模式運行(VS中快捷鍵是CTRL+F5),此時頁面已經打開,等到想調試的時候就選擇附加進程進行調試,不想調試的時候我中止調試就好了,這樣比按F5要快不少。第二個好處是,當程序已經發布了,本地也有源代碼的狀況下,那麼就能夠直接附加到進程就能夠調試了。下面是圖示。

注:Eclipse中我還不知道怎麼實現這個功能,但願知道的朋友補充一下。

image 

5,數據提示

當咱們在調式一段程序,須要反覆查看某個變量的值的時候,咱們能夠把這個變量釘在屏幕上,並且,咱們還能夠臨時去修改變量的值,這對咱們去模擬一些BUG的時候很是有用。

注:Eclipse中還不知道怎麼弄,好像在變量聲明的地方沒法設置斷點,但願熟悉的朋友補充一下。

image

另外,這篇文章參考瞭如下文章:

1) 學習之路三十二:VS調試的簡單技巧

2) 那些VisualStudio隱藏的調試功能

更新歷史:

2014.9.12 增長CTRL+,定位到快捷鍵for VS

相關文章
相關標籤/搜索