天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

VS 2010 和 .NET 4.0 系列之《在VS 2010中查詢和導(dǎo)航代碼》篇

系列文章導(dǎo)航:

VS 2010 和 .NET 4.0 系列之《ASP.NET 4 中的SEO改進 》篇

VS 2010 和 .NET 4.0 系列之《干凈的Web.Config文件 》篇

VS 2010 和 .NET 4.0 系列之《起始項目模板》篇

VS 2010 和 .NET 4.0 系列之《多定向支持》篇

VS 2010 和 .NET 4.0 系列之《多顯示器支持》篇

VS 2010 和 .NET 4.0 系列之《代碼優(yōu)化的Web開發(fā)Profile》篇

VS 2010 和 .NET 4.0 系列之《ASP.NET, HTML, JavaScript 代碼片段支持》篇

VS 2010 和 .NET 4.0 系列之《自動啟動ASP.NET應(yīng)用》篇

VS 2010 和 .NET 4.0 系列之《在ASP.NET 4 Web Forms中實現(xiàn)URL導(dǎo)向》篇

VS 2010 和 .NET 4.0 系列之《在VS 2010中查詢和導(dǎo)航代碼》篇

VS 2010 和 .NET 4.0 系列之《VS 2010代碼智能提示的改進》篇

VS 2010 和 .NET 4.0 系列之《添加引用對話框的改進》篇

VS 2010 和 .NET 4.0 系列之《內(nèi)置圖表控件》篇


  代碼的查詢和導(dǎo)航

  開發(fā)人員需要能夠?qū)φ_發(fā)的代碼庫(code-base)進行輕松的導(dǎo)航,查詢和理解。在我們做的可用性研究中,我們一般會發(fā)現(xiàn)較之于實際編寫新的代碼,開發(fā)人員會花更多的時間在閱讀,檢查和查詢現(xiàn)有的代碼上。

  VS 2010代碼編輯器添加了一些非常棒的新特性,這些特性允許你更加高效地查詢和導(dǎo)航代碼庫,允許你更輕松地理解代碼在方案中是如何被使用的。

  ASP.NET MVC源碼進行查詢和導(dǎo)航

  為這個博客貼子起見,我將使用ASP.NET MVC框架代碼庫(有好幾千行代碼)來幫助示范一些新的VS 2010查詢和導(dǎo)航特性。如果你安裝了VS 2010 Beta 2的話,你可以跟著我的示范,從這里下載并打開ASP.NET MVC框架源碼。

  你應(yīng)該會發(fā)現(xiàn)下面的特性對這個項目而言,速度非常快,盡管該項目有好幾千行代碼。我在下面示范的所有的特性目前都內(nèi)置于VS 2010了(對所有的項目類型,以及對VB 和 C#都工作)。

  VS 2010 之“Navigate To (導(dǎo)航到)” 支持

  能夠快速地找到代碼,并導(dǎo)航到這些代碼,無論對大的還是小的方案都很重要。

  Visual Studio 2010現(xiàn)在支持一個新的(Ctrl+逗號)的鍵盤快捷(即,控制鍵和逗號鍵同時按下)。當你按下(Ctrl+逗號)組合鍵時,一個新的VS 2010 “Navigate To(導(dǎo)航到)”對話框會出現(xiàn),允許你快速地查詢你的方案中的類型,文件,變量和成員,然后打開并且定位到這些東西上面:

  這個“Navigate To”對話框提供了一個快速的遞增查詢界面, 你一開始鍵入查詢文字,結(jié)果就立刻顯示出來。例如,鍵入“cont”(不用按回車),你就會看到隨著你開始鍵入,176個結(jié)果立刻顯示在結(jié)果列表中:

  再多鍵入幾個字符,你就會看到列表自動過濾為那些匹配“controller”的結(jié)果:

  你可以使用卷動條卷動結(jié)果,或者也可以按tab鍵,然后使用光標箭頭鍵(如果你不想把手移離鍵盤的話)。你會發(fā)現(xiàn)“Navigate To” 窗口列出了匹配你的查詢文字的所有類型的結(jié)果, 包括類型名稱,方法、屬性名稱,字段聲明,以及文件名稱:

  選擇列表中的任意一個結(jié)果,會將相關(guān)的源碼文件在VS 2010打開(如果還沒有打開的話),立刻將你帶到相關(guān)的源碼位置(并且將其中的相關(guān)名稱高亮顯示):

  很棒的模糊查詢功能

  “Navigate To”查詢框還支持一些很棒的“模糊查詢”功能,允許你做一些智慧的過濾和查詢操作,而不必知道你正在查詢的東西的確切名稱。在對話框的遞增/即查即顯的查詢界面中這些操作都工作良好,允許你改進你的查詢,隨著鍵入操作,就得到實時的結(jié)果。

  來試一下,讓我們首先查詢“cache”這個詞。注意一下,查詢結(jié)果中不光包括那些起先的字母為“cache”的項,而且也顯示了那些包含“cache”這個詞的結(jié)果:

  我們可以在查詢文本框中加多個詞,進一步過濾查詢結(jié)果。例如,在下面,我對列表做了過濾,只包括那些名稱中同時含有“cache”  “action” 的結(jié)果:

  .NET框架中的類型和成員用了一個命名設(shè)計指引模式叫“Pascal Casing”,即,類型或成員名稱中每個詞的第一個字母都是大寫的。“Navigate To”對話框也允許你使用這個“Pascal Casing”約定來快速地過濾類型。只鍵入類型/成員名稱的大寫首字母,它就會立刻過濾列出匹配大寫pascal命名約定的結(jié)果。

  例如,鍵入“AMS” 會過濾出下面的結(jié)果(只有那些名稱中的詞先以A起頭,然后是以M起頭,然后是以S起頭的類型和成員):

  “Navigate To” 對話框允許你以最少的鍵擊次數(shù)就能快速地過濾和定位代碼,免去你不得不使用鼠標,打開解決方案管理器,然后直接點擊文件的勞苦。

  查看調(diào)用的層次結(jié)構(gòu)

  擁有快速查詢和導(dǎo)航的能力固然是好,但要是能夠快速地發(fā)現(xiàn)代碼是怎么被使用的,那就更好了。VS 2010引進了一個新的“View Call Hierarchy (查看調(diào)用的層次結(jié)構(gòu))”的特性,允許你快速地發(fā)現(xiàn)你的代碼庫中的某個特定方法或?qū)傩允窃诤翁幈徽{(diào)用的,允許你快速地遍歷(traverse)整個代碼庫的調(diào)用樹形圖(而不必運行或調(diào)試方案)。

  要用這個特性,只要選擇你的代碼庫中的一個方法或?qū)傩悦Q,然后鍵入(Ctrl+K,Ctrl+T )快捷鍵組合,或者右擊、然后選擇“View Call Hierarchy”上下文菜單命令:

  這會調(diào)出一個新的“Call Hierarchy (調(diào)用的層次結(jié)構(gòu))”工具窗口,在默認情形下會在代碼編輯器下方顯示。在下面,你可以看到“Call Hierarchy”窗口顯示了我們方案中的2個方法,它們調(diào)用了我們在上面選擇了的 ViewPage.RenderView() 方法。

  然后,我們還可以向下鉆取到第一個“RenderViewAndRestoreContentType”方法,進而看都是誰調(diào)用了它:

  對虛擬方法/屬性,你還可以使用調(diào)用層次結(jié)構(gòu)窗口看哪些類繼承并覆蓋了它們。

  雙擊“Call Hierarchy”窗口中的任意一個成員會打開相應(yīng)的源碼文件,立刻將你帶到對應(yīng)的源碼位置:

  這允許你快速地在代碼庫中導(dǎo)航,在編寫代碼時,更好地理解類和方法間的關(guān)系。

  引用的高亮顯示

  在VS 2010中,當你在代碼編輯器中選擇或高亮顯示一個變量/參數(shù)/字段聲明時,所有這些東西隨后用到的地方都會在編輯器中為你自動地高亮顯示,這方便你快速地識別一個變量或參數(shù)是在什么地方被使用的以及是如何使用的。

  例如,當我們在下面的編輯器中選擇傳到ControllerActionInvoker.GetParameterValue()方法中的“controllerContext” 參數(shù)時,注意在該方法中用了這個參數(shù)的4個地方現(xiàn)在都被自動高亮顯示了:

  如果我選擇該方法中的一個局部變量,用到了它的所有地方現(xiàn)在都被自動地高亮顯示了:

  如果多個地方被高亮顯示了,你可以使用(Ctrl-Shift-up箭頭)鍵組合和(Ctrl-Shift-Down箭頭鍵組合在它們之間來回循環(huán),快速地將光標移到上一個或下一個高亮顯示的字符上。

  結(jié)束語

  新的 VS 2010 文本編輯器方便了對項目或方案中的代碼的快速查詢,導(dǎo)航和探究。這些操作的速度非常之快(即使是在一個大的代碼庫內(nèi)),而且隨著你對項目進行改動,會保持更新,最終結(jié)果是使你的生產(chǎn)力大為提高。

  希望本文對你有所幫助,

  Scott

NET技術(shù)VS 2010 和 .NET 4.0 系列之《在VS 2010中查詢和導(dǎo)航代碼》篇,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 777ZYZ玖玖资源站最稳定网址 | WWW国产亚洲精品久久 | 一级黄色香蕉视频 | 厕所RXXX | 暖暖视频免费观看视频 | 在线中文字幕亚洲日韩 | 67194成在线观看免费 | 亚洲国产AV精品一区二区蜜芽 | 十八禁肉动漫无修在线播放 | 微拍秒拍99福利精品小视频 | 99久久久无码国产精品AAA | 国产亚洲精品成人AV久久 | 久久综合网久久综合 | 户外露出野战hd | 一本大道手机在线看 | 久久99r66热这里只有精品 | 日日射夜夜干夜夜插在线播放 | 甜性涩爱bt下载 | 7723手机游戏破解版下载 | 亚洲AV无码一区二区色情蜜芽 | 中文字幕久久久 | 免费毛片a在线观看67194 | videossex性暴力| 国产手机在线亚洲精品观看 | 国内自拍 在线 亚洲 欧美 | 毛片无码免费无码播放 | 正在播放一区二区 | 啪啪激情婷婷久久婷婷色五月 | chinese国语露脸videos | 99久久精品国产一区二区三区 | 男女夜晚在爽视频免费观看 | 青娱乐国产精品视频 | 午夜AV亚洲一码二中文字幕青青 | 亚洲熟妇AV乱码在线观看 | 性色AV乱码一区二区三区视频 | 最新色导航 | 伦理 电影在线观看 | 无码AV免费精品一区二区三区 | 国产树林野战在线播放 | 超碰免费视频caoporn | 又硬又粗又大一区二区三区视频 |