PowerShell:
Organizando código en funciones
Cómo hacerlo:
Escribamos una función para calcular la suma de dos números. Simple, pero ilustra el punto.
function Add-Numbers {
param (
[int]$FirstNum,
[int]$SecondNum
)
return $FirstNum + $SecondNum
}
# Llamar a la función con 5 y 10
$sum = Add-Numbers -FirstNum 5 -SecondNum 10
Write-Output "La suma es $sum"
Ejemplo de salida:
La suma es 15
Análisis Profundo
Las funciones en PowerShell, como en la mayoría de los lenguajes, no son ninguna novedad. Hemos estado compartimentando código desde los días de Fortran. Se trata de ’no reinventar la rueda’. ¿Alternativas? Claro, scripts o cmdlets. Pero carecen de la pulcritud y la sensibilidad al contexto de las funciones dentro de los scripts.
¿Implementación? Las funciones pueden ser básicas como nuestro ejemplo o complejas con ámbitos, entrada de pipeline y más. Tomemos las Advanced Functions
. Imitan a los cmdlets con parámetros que tienen atributos, como [Parameter(Mandatory=$true)]
. Eso es una muestra de la flexibilidad de PowerShell.