¿Hay algún estilo de codificación recomendado para escribir scripts de PowerShell? Es no sobre cómo estructurar el código (cuántas funciones, si usar módulo, ...). Se trata de 'cómo escribir el código para que sea legible'.¿Cuál es el estilo de codificación recomendado para PowerShell?
En lenguajes de programación, son algunos recomienda codificación de estilos (qué guión, cómo se va a sangrar - espacios/pestañas, dónde hacen nueva línea, dónde colocar los apoyos , ...), pero no he visto ninguna sugerencia para PowerShell.
Lo que me interesa particularmente en:
cómo escribir parámetros
function New-XYZItem
([string] $ItemName
, [scriptblock] $definition
) { ...
(veo que es más como la sintaxis 'V1') o
function New-PSClass {
param([string] $ClassName
,[scriptblock] $definition
)...
o (¿por qué agregar el atributo de vacío?)
function New-PSClass {
param([Parameter()][string] $ClassName
,[Parameter()][scriptblock] $definition
)...
o (otro formato vi tal vez en el código de Jaykul)
function New-PSClass {
param(
[Parameter()]
[string]
$ClassName
,
[Parameter()]
[scriptblock]
$definition
)...
o ..?
cómo escribir tubería compleja
Get-SomeData -param1 abc -param2 xyz | % {
$temp1 = $_
1..100 | % {
Process-somehow $temp1 $_
}
} | % {
Process-Again $_
} |
Sort-Object -desc
o (nombre del cmdlet en la nueva línea)
Get-SomeData -param1 abc -param2 xyz |
% {
$temp1 = $_
1..100 |
% {
Process-somehow $temp1 $_
}
} |
% {
Process-Again $_
} |
Sort-Object -desc |
y lo que si hay -Comience params -END -Proceso? ¿Cómo hacer que sea más legible?
Get-SomeData -param1 abc -param2 xyz |
% -begin {
init
} -process {
Process-somehow2 ...
} -end {
Process-somehow3 ...
} |
% -begin {
} ....
o
Get-SomeData -param1 abc -param2 xyz |
% `
-begin {
init
} `
-process {
Process-somehow2 ...
} `
-end {
Process-somehow3 ...
} |
% -begin {
} ....
la indentitation es importante aquí y qué elemento se pone en la nueva línea también.
He cubierto solo las preguntas que me vienen a la mente con mucha frecuencia. Hay algunos otros, pero me gustaría mantener esta pregunta tan 'corta'.
Cualquier otra sugerencia es bienvenida.
Supongo que la falta de un estilo de codificación común para los scripts de PowerShell se debe al hecho de que está más relacionado con el uso del administrador en lugar de la codificación "real". – Filburt
Tienes razón. Sin embargo, los administradores de imho necesitan scripts que sean fáciles de leer. Por ejemplo, no me gustan los backticks, así que trato de evitarlos. – stej
Esta es una gran pregunta. –