क्या कोई अनुशंसित कोडिंग शैली है जो पॉवरशेल स्क्रिप्ट कैसे लिख सकती है?
यह नहीं है कि कोड की संरचना कैसे करें (मॉड्यूल के उपयोग के लिए कितने कार्य, ...)। यह ' कोड लिखने के तरीके के बारे में है ताकि यह पठनीय हो ।'
प्रोग्रामिंग भाषाओं में कुछ अनुशंसित कोडिंग स्टाइल (क्या इंडेंट करना है , कैसे इंडेंट करना है - स्पेस / टैब्स, कहां नई लाइन बनाना है , कहां ब्रेसेस लगाना है , ...), लेकिन मैंने पावरशेल के लिए कोई सुझाव नहीं देखा है।
मुझे विशेष रूप से दिलचस्पी है:
पैरामीटर कैसे लिखें
function New-XYZItem
( [string] $ItemName
, [scriptblock] $definition
) { ...
(मैं देख रहा हूं कि यह 'V1' सिंटैक्स की तरह है)
या
function New-PSClass {
param([string] $ClassName
,[scriptblock] $definition
)...
या (खाली विशेषता जोड़ने के लिए क्यों?)
function New-PSClass {
param([Parameter()][string] $ClassName
,[Parameter()][scriptblock] $definition
)...
या (अन्य प्रारूपण मैंने शायद जयकुल के कोड में देखा था)
function New-PSClass {
param(
[Parameter()]
[string]
$ClassName
,
[Parameter()]
[scriptblock]
$definition
)...
या ...?
जटिल पाइपलाइन कैसे लिखें
Get-SomeData -param1 abc -param2 xyz | % {
$temp1 = $_
1..100 | % {
Process-somehow $temp1 $_
}
} | % {
Process-Again $_
} |
Sort-Object -desc
या (नई लाइन पर cmdlet का नाम)
Get-SomeData -param1 abc -param2 xyz |
% {
$temp1 = $_
1..100 |
% {
Process-somehow $temp1 $_
}
} |
% {
Process-Again $_
} |
Sort-Object -desc |
और क्या करता है, तो देखते हैं -begin
, -process
और -end
मानकों? मैं इसे सबसे अधिक पठनीय कैसे बनाऊं?
Get-SomeData -param1 abc -param2 xyz |
% -begin {
init
} -process {
Process-somehow2 ...
} -end {
Process-somehow3 ...
} |
% -begin {
} ....
या
Get-SomeData -param1 abc -param2 xyz |
% `
-begin {
init
} `
-process {
Process-somehow2 ...
} `
-end {
Process-somehow3 ...
} |
% -begin {
} ....
यहाँ इंडेंटेशन महत्वपूर्ण है और किस तत्व को नई लाइन पर भी रखा गया है।
मैंने केवल उन सवालों को कवर किया है जो मेरे दिमाग में बहुत बार आते हैं। कुछ अन्य हैं, लेकिन मैं इस ढेर अतिप्रवाह प्रश्न को 'संक्षिप्त' रखना चाहूंगा।
अन्य सुझावों का स्वागत है।