2016-07-14 112 views
2

我想在一個模塊中重新使用一個變量。假設這是一個常數。導出模塊變量名稱的命名約定

#MyModule.psm1 
$MyVar = randomObject 
Export-ModuleMember -Variable MyVar 

#Get-Stuff.ps1 
Import-Module -Name $moduleName 
$randomVar = $MyVar.Property 

我的意思是,我可以只使用常規的慣例,但隨後一個編碼器怎麼會知道這個變量是從導入模塊實例?

+1

我覺得這是個人喜好。使用合乎邏輯的東西並記錄它。 –

回答

2

在我的意見你可能不應該導出變量開始。到目前爲止,我還沒有看到這樣做的令人信服的理由。相反,我寧願導出一個函數,即使它只是返回一個對象。它更安全,更通用,更明顯等。

但是有人導入你的模塊將不得不通過閱讀你的文檔或只是熟悉它來知道它。這不像看到導出的函數那麼簡單。

如果你擔心衝突的名字,你有你的命名變量中的相當大的餘地,特別是如果你想真的很難參考:

${Some really ___ weird um, variable [email protected]} = randomObject 
+0

現在*邪惡*命名。 – sodawillow

+0

@sodawillow哦,它變得更糟了,我剛剛測試了一個以空格開頭幷包含換行符的變量名! – briantist

+0

現在我正在考慮Zalgo變量名稱...... *令人毛骨悚然*。我看過一個用C#編寫的西里爾語標識符的線程,這也很可怕。但我在這裏得到OT,對不起。我心何在 ?^_^ – sodawillow