| |
|
|
| |
-
Windows PowerShell - Pipeline - Method y Property
-
Method (métodos) son operaciones, las cuales pueden ser llamadas en un objeto para ejecutar una acción. Por ejemplo Kill(),
termina un proceso.
Method pueden ofrecer datos o variar datos en un objeto.
Los method tienen paréntesis, aún cuando la llamada no contenga parámetros. De no ponerse los paréntesis, se
entenderá como
que se requiere información sobre el method y no como una llamada del mismo.
Los property (atributos) son datos que contienen información sobre el objeto o con los cuales se le traspasan datos al objeto, por
ejemplo "MaxWorkingSet".
Como puede apreciarse en la salida de "Get-Process | Get-Member", en cada atributo hay dos métodos. Por ejemplo
"Get_MaxWorkingSet()" y "Set_MaxWorkingSet()". Esto es producto de que los atributos se forman a partir de dos
métodos; uno para leer los datos (Getter) y el otro para transferir datos (Setter).
Para el usuario de WPS, esto significa la existencia de dos posibilidades para llamar datos; a través de la "Property"
Get-Process | Where-Object { $_.name –eq "iexplore" } | Foreach-Object { $_.MaxWorkingSet }
o a través del "Method"
Get-Process | Where-Object { $_.name –eq "iexplore" } | Foreach-Object { $_.get_MaxWorkingSet() }
De la misma forma, existe la posibilidad, ofreciendo el atributo:
Get-Prtocess | Where-Object { $_.name –eq "iexplore" } | Foreach-Object { $_.MaxWorkingSet = 1413120 }
o ofreciendo el método "Set" correspondiente:
Get-Process | Where-Object { $_.name –eq "iexplore" } | Foreach-Object {$_.set_MaxWorkingSet(1413120) }
La existencia de "Getter" y "Setter" arroja algunas luces sobre las acciones posibles de un atributo. Falta el
"Setter", no será posible variar el atributo (por ejemplo: "StartTime" en la clase "Process").
Falta el "Getter", solo podrá sentar el atributo. Para este caso no existe ejemplo en la clase "Process", lo
que no se encuentra frecuentemente. No obstante, se utiliza en relación con claves (heyword), las cuales no es posible reestablecer,
dado que no se almacenan en texto claro, si no en valor Hash.
 |
|
Ultima actualisación: Tue, 24 ▪ May ▪ 2011
|
|
|
|