最近在和同事聊天的時候,才發現到其實雖然我一直以來「以為」有多次強調該如何用Visual Studio run及進入debug比較節省時間, 但是其實有些同事還是不知道。
因此,準備一系列我個人認為大家應該都會的開發工具小技巧,這篇將會從開發每天都會做的事情,run及debug開始:在用Visual Studio開發的時候, 到底應該怎麼run和debug才是最有效率的方式,以及如何使用免費的套件ReAttach來讓debug流程更加的容易。
一般的開發及debug流程
在我以前剛學會Visual Studio開發的時候,那個時候我學習到的做法都是:
- 改程式
- 要測試的時候按下快速鍵:
F5
也就是Start Debugging
的動作(綠色的按鈕) - 開始測試功能,如果需要修改,由於在debug模式,需要先停下debug模式,之後才能改
- 重複第一個步奏
在這個流程裡面,貌似沒有問題,但是實際上:
- 執行速度慢:debug模式因為要能夠debug,因此會load很多其他東西,因此造成了執行起來速度變慢
- 需要消耗更多資源:同上一條一樣,因為load的東西多因此消耗的記憶體也多
- 修改的流程消耗更多時間:由於在debug模式是無法修改,因此需要停下來才能夠修改
如何優化run及debug的方式
既然上面知道了一般的做法有什麼問題,那能夠怎麼優化呢?以下分幾個步奏來執行:
- 以 Start Without Debugging(快速鍵 Ctrl+F5)的執行方式替代 F5
- 當需要debug的時候以Attach Process方式進入debug模式
- 以套件ReAttach讓attach process的流程更容易
以 Start Without Debugging(快速鍵 Ctrl+F5)的執行方式替代 F5
很多時候把網站run起來的目的只是為了測試功能,因此其實不需要進入Debug模式。
所以養成以Ctrl + F5
替代F5
。
不過如果測試過程要改東西怎麼辦?
這個時候可以用 Build (快速鍵 F6)
來編譯修改內容。
如果有遇到Build好像沒有很成功,這個時候可以用Clean
,或者Rebuild
(Rebuild本質上就是clean + build)。
透過養成Ctrl + F5
的習慣,可以減少很多啟動debug,然後停掉debug在修改所花的時間。
不過下一個問題是,如果遇到問題需要debug怎麼辦?
當需要debug的時候以Attach Process方式進入debug模式
當Visual Studioa用Start Without Debugging把網站run起來之後,這個網站會被IIS Express host起來。
而Visual Studio可以透過Attach to Process (快捷鍵: Cltr+Alt+P)
attach到IIS Express達到用Visual Studio啟動debug模式。
- 啟動 Attach To Process 的畫面
- 選擇 iisexpress.exe
- 從Available Process找到iisexpress.exe,如果在清單裡面沒有,可以勾選
Show process from all users
Attach完了之後,Visual Studio就會進入到一般的debug模式,剩下就和一般debug沒有什麼兩樣。
F5
不一樣,如果是F5
啟動的,當停下debug模式的時候, 整個網站也會停下來。 clean
,在Ctrl + F5
。 Attach To Process
,換個角度說其實也可以attach到一般IIS網站,甚至Remote Debug。這個完全做的到,但是這篇就不介紹了。 以套件ReAttach讓attach process的流程更容易
了解了Attach To Process
之後,下一個問題就是,每一次都要開那個畫面然後找到iisexpress真的很麻煩,是否有什麼方式讓找這個process更加容易呢?
有人因此建立了一個套件,ReAttach,甚至非常佛心的Open Source以及以Free的方式發佈出來。
ReAttach小檔案
- 支援的Visual Studio版本:2012+
- 官網:https://marketplace.visualstudio.com/items?itemName=ErlandR.ReAttach
- 直接下載:https://marketplace.visualstudio.com/items?itemName=ErlandR.ReAttach
- 最新版本:2.2
- Source Code:https://github.com/erlandranvinge/ReAttach
ReAttach使用非常簡單,安裝了之後,在工具列會有一個紫色的播放按鈕可以按:
在這個功能裡面,可以按旁邊下三角形看到最近的4筆曾經有Attach過的Process。
最新Attach的Process會以第一筆呈現。
只需要選擇要Attach的Process即可。
如果說上面的Process都沒有目前想要Attach的,那麼可以先用F5
,然後停下來之後剛剛那個process就會出現在第一筆。
結語
如果養成了只以Ctrl+F5
的方式在Run程式,真需要debug的時候在用Attach Process
的方式進入debug模式, 不止能夠讓整個開發流程速度更快,也能夠鍛煉不debug情況下嘗試解決問題。
希望透過這篇,如果還沒養成這個習慣的可以先試試看,並且裝ReAttach讓整個流程變得更加順利。
如果有不同且能夠更節省開發時間的流程,也請用留言方式互相切磋切磋。
沒有留言 :
張貼留言