W większości języków podobnych do C zastanawiam się nad umieszczeniem nawiasów klamrowych w miejscu, które moim zdaniem ułatwi ich odczytanie.
Analizator składni programu PowerShell rozpoznaje, kiedy instrukcja wyraźnie nie jest kompletna, i przechodzi do następnego wiersza. Na przykład wyobraź sobie cmdlet, który pobiera opcjonalny parametr bloku skryptu:
Get-Foo {............}
jeśli blok skryptu jest bardzo długi, możesz napisać:
Get-Foo
{
...............
...............
...............
}
Ale to nie zadziała: parser zobaczy dwie instrukcje. Pierwszym jest, Get-Foo
a drugim blokiem skryptu. Zamiast tego piszę:
Get-Foo {
...............
...............
...............
}
Mógłbym użyć znaku kontynuacji linii (`), ale to sprawia, że kod jest trudny do odczytania i powoduje błędy.
Ponieważ ten przypadek wymaga otwarcia nawiasu klamrowego w poprzedniej linii, wszędzie podążam za tym wzorem:
if (warunek) {
.....
}
Zauważ, że if
instrukcje wymagają bloku skryptu w gramatyce językowej, więc parser będzie szukał w następnym wierszu bloku skryptu, ale dla zachowania spójności trzymam otwarte nawiasy klamrowe w tej samej linii.
Po prostu, w przypadku długich rurociągów, łamię się po znaku potoku ( |
):
$ project.Items |
? {$ _. Klucz -eq „ProjectFile”} |
% {$ _. Wartość} |
% {$ _. EvaluatedInclude} |
% {
.........
}