您好,登錄后才能下訂單哦!
VB.NET編程語言中的功能強大,有很多都值得我們?nèi)ド钊胙芯?。能熟練的?yīng)用這一編程語言,可以幫助我們大大提高百年城效率。在這里先來了解一下VB.NET重構(gòu)中的一些基本內(nèi)容,希望可以給大家?guī)硪恍椭?br />
大家已經(jīng)很熟悉C#2005將加入內(nèi)置的重構(gòu)支持,方便用戶快速對代碼實施常用的重構(gòu)。重構(gòu)是十分重要的維護代碼的手段,不僅C#的用戶需要,VB的用戶更加需要。因為從VB6升級來的代碼,經(jīng)過升級向?qū)У?quot;蹂躪"后已經(jīng)面目全非,而且許多舊的代碼風(fēng)格與新的。net特性格格不入。因此,重構(gòu)成了升級舊代碼,改善舊代碼的重要手段??上У氖牵酥孛猓琕B2005并沒有加入重構(gòu)特性,這讓VB的程序員十分掃興。
Refactor!支持VisualStudio2005獨特的智能標(biāo)記,即將VB.NET重構(gòu)功能置于上下文的智能標(biāo)記中,而不是在一個"重構(gòu)"菜單選項中提供選擇。這樣用戶更容易知道在當(dāng)前的代碼上可進行什么樣的操作,而不是從一堆不知所措的重構(gòu)名字中選取。這類智能標(biāo)記通常要等用戶將輸入光標(biāo)置于可重構(gòu)的對象上才會出現(xiàn),如子程序或函數(shù)名稱、變量名稱等等。
重新排列參數(shù)是Refactor!多項重構(gòu)功能之一,它可以將函數(shù)或子程序的參數(shù)重新排列。更神奇的是,他可以將按引用傳遞的參數(shù)轉(zhuǎn)化為函數(shù)的返回值,或進行相反的操作。比如有這樣一個子程序:
Public Sub Sub1(ByVal a As Integer, ByVal b As String)
'調(diào)用方
Call Sub1(10, "str")
通過"重新排列參數(shù)"可以將上述程序重構(gòu)成: 軟件開發(fā)網(wǎng)
Public Sub Sub1(ByVal b As String, ByVal a As Integer)
'調(diào)用方
Call Sub1("str", 10)
再比如有這樣的子程序:
Public Sub Sub2(ByRef x As Integer)
'調(diào)用方
Dim i As Integer Call Sub2(i)
同過"重新排列參數(shù)"可以將按引用傳遞的參數(shù)移出而變成返回值:
Public Function Sub2()As Integer
'調(diào)用方
Dim i As Integer i = Sub2()
還可以進行相反的VB.NET重構(gòu),將函數(shù)的返回值變成按引用傳遞的參數(shù)。有許多VB程序員習(xí)慣用參數(shù)傳出所需要的參數(shù)。現(xiàn)在你可以用這個重構(gòu)功能項,將合適的子程序轉(zhuǎn)變成函數(shù),或進行相反的操作。
VB.NET運算符重載強大功能介紹
VB.NET語法糖味道如何
VB.NET掃描系統(tǒng)服務(wù)實現(xiàn)原理分析
VB.NET與GDI結(jié)合實現(xiàn)步驟詳解
VB.NET菜單組件的實現(xiàn)方案
進行這項操作的步驟是:
1、先保存和編譯項目。
2、將光標(biāo)放在函數(shù)的定義上,點擊出現(xiàn)的智能標(biāo)記,并選擇"ReorderParameters".
3、按Tab鍵,選擇要移動的參數(shù)或返回值,然后按左右方向鍵移動這個參數(shù),到合適的位置。
4、按Enter鍵確定修改,接下來根據(jù)提示將函數(shù)所有的調(diào)用處更改為新的簽名。
5、根據(jù)需要,進行RenameLocal重構(gòu),將此重構(gòu)引入的變量名更改為適當(dāng)?shù)拿帧?br />
下面的程序演示了"重新排列參數(shù)"重構(gòu)進行的過程,交換參數(shù)的視覺效果確實很酷!
重命名本地變量是另一項非常有用的功能。實際上VB2005已經(jīng)內(nèi)含安全的重命名功能,但重命名本地變量功能可以將重命名的范圍限定在當(dāng)前的函數(shù)或子程序中,同時明顯的視覺效果可以讓你對被重命名的變量一目了然。操作步驟是:
1、選擇要重命名的符號,單擊智能標(biāo)記并選擇"RenameLocal".
2、在綠色的可替換區(qū)域內(nèi)輸入新的名稱,按Tab鍵可在所有出現(xiàn)該名稱的區(qū)域間跳轉(zhuǎn),可借此觀察此項VB.NET重構(gòu)的影響范圍。
3、確定后,按下Enter鍵。很簡單。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。