PowerShell編程中的一些命名規(guī)則參考
本文介紹PowerShell自定義函數(shù)在使用時的最佳實踐(Best Practices)。包括函數(shù)名的命名、可選參數(shù)、必選參數(shù)等。
PowerShell中的函數(shù)定義可以很簡單的使用一個“function <函數(shù)名>{函數(shù)體}”的形式去定義。但微軟推薦創(chuàng)建函數(shù)時遵循以下實踐規(guī)則。
1、函數(shù)名。
使用cmdlet的統(tǒng)一命令規(guī)則,即“動詞-名詞”的形式。如Write-Host,表示輸出到主機。如果是獲取一個列表,不要使用List作為動詞,建議使用Get,如Get-ChildItem。名詞部分用一個有意義的英文單詞,記得使用單數(shù),不要使用名詞的復數(shù)形式。如果要列出網卡的一個函數(shù),不要使用ListNetworkCards,而應該使用Get-NetworkCard。這就是關于函數(shù)命名的最佳實踐。
2、公司前綴。
假定你寫一個Get-NetworkCard的函數(shù),洪哥也寫了同樣一個。那是不是很難區(qū)分誰是誰寫的?所以,微軟建議在函數(shù)名的名詞部分加上公司前綴,而不加公司前綴的函數(shù),我們一般可以理解為微軟發(fā)布的。這個公司前綴用編寫的兩到三個字母為宜,比如洪哥函數(shù)名可以命為Get-HGNetworkCard。這里洪哥的前綴用的HG,你的呢?
3、參數(shù)的命名要規(guī)范
參數(shù)要用有意義單詞,不要使用-PC作為參數(shù)名,你可以用-ComputerName取而代之。如果有時候需要一個文件路徑作為一個參數(shù),不要使用-File,因為指代實在是太模糊了。可以使用-Path,這樣更明確。雖然沒有官方給出一個標準的參數(shù)命名的列表,但我們應該參照內置(built-in)的cmdlets所用的那些參數(shù)名稱。這樣其他人使用時才更容易理解,對不對?
4、可選參數(shù)
為可選參數(shù)定義一個默認值,這是一個很好的習慣。如果用戶不管這個參數(shù),那么這個參數(shù)也可以被處于已賦值狀態(tài)。
5、必選參數(shù)
雖然PowerShell中不要求定義函數(shù)參數(shù)時必須指定數(shù)據類型,但最佳實踐要求我們這樣做。如果我們指定了類型,那么用戶的輸入將被強制轉換為我們定義的數(shù)據類型,否則都會被當作字符串來對待。
6、寫一些注釋來作為幫助說明
一個段函數(shù)給其他人,沒有注釋說明,別人很難看懂。即便是自己,不加注釋的代碼,時間過得久了,也不一定保證能看得懂,對不?
關于PowerShell函數(shù)使用的最佳實踐(Best Practices),本文就介紹這么多,希望對您有所幫助,謝謝!
相關文章
PowerShell函數(shù)參數(shù)設置成自動識別數(shù)據類型的例子
這篇文章主要介紹了PowerShell函數(shù)參數(shù)設置成自動識別數(shù)據類型的例子,這個方法可以很方便的使用參數(shù)集,而不用每次指定名稱,需要的朋友可以參考下2014-07-07
PowerShell中把IP轉換為長整形數(shù)字的方法
這篇文章主要介紹了PowerShell中把IP轉換為長整形數(shù)字的方法,本文通過自定義兩個過濾器實現(xiàn),需要的朋友可以參考下2014-08-08
PowerShell實現(xiàn)查詢打開某個文件的默認應用程序
這篇文章主要介紹了PowerShell實現(xiàn)查詢打開某個文件的默認應用程序,本文通過C#調用Windows API來實現(xiàn)這個需求,需要的朋友可以參考下2015-06-06
PowerShell小技巧之使用New-Module命令動態(tài)創(chuàng)建對象
這篇文章主要介紹了在PowerShell中使用New-Module命令動態(tài)創(chuàng)建對象,比New-Object高大上很多了吧2014-09-09
Windows Powershell Where-Object 條件過濾
本篇會對條件判斷進行實際應用。在管道中可以通過條件判斷過濾管道結果,Where-Object會對集合逐個過濾,將符合條件的結果保留。2014-10-10
PowerShell函數(shù)參數(shù)使用智能提示功能例子
這篇文章主要介紹了PowerShell函數(shù)參數(shù)使用智能提示功能例子,這個功能一般需要在PowerShell集成開發(fā)環(huán)境ISE中才會顯示智能提示,需要的朋友可以參考下2014-07-07

