Lo stile del bracket è di solito una questione di opinione.
Tuttavia, in questo caso, lo è qualcosa da seguire. Apple utilizza la seconda sintassi fornita esclusivamente in tutta la sua documentazione, con una distinzione per Swift: parentesi.
Da The Swift Programming Language Guide – Control Flow:
Oltre a for-in
loop, Swift supporti tradizionali in stile C for
loop con una condizione e un incrementatore ...
Ecco la forma generale di questo formato ciclo:
for initialization; condition; increment {
statements
}
virgole separano le tre parti della definizione del ciclo, come in C. Tuttavia, a differenza di C, Swif t non ha bisogno di parentesi per l'intera inizializzazione di "; condizione; incrementare "il blocco.
In altre parole, non sono necessarie le parentesi attorno alle istruzioni condizionali (in qualsiasi tipo di ciclo o istruzione logica), e in genere ciò viene utilizzato da Apple nella documentazione.
Così, nel campione che ci ha fornito, Apple avrebbe usato questo stile (si noti la spaziatura tra le parentesi graffe pure):
if condition {
// Stuff
} else {
// Other stuff
}
Alcuni altri esempi dalla documentazione:
// While loops
while condition {
statements
}
// Do-while loops
do {
statements
} while condition
// Switch statements
switch some value to consider {
case value 1:
respond to value 1
case value 2,
value 3:
respond to value 2 or 3
default:
otherwise, do something else
}
solo l'opinione di un uomo - noi ** molto fortemente ** insistiamo solo sul primo stile in ogni gruppo che ho. per me, questo è lo stile "nuovo-vecchio" della gestione delle parentesi graffe. la seconda opzione che elevi - anche se diffusa - è incredibilmente stupida e illogica - ** è la "nuova matematica" della formattazione ** - nessuno può spiegare perché è mai stata introdotta nel codice, e spero che andrà via in pochi anni come una cattiva idea. questo è un argomento controverso ed è difficile sapere cosa è meglio. criticamente, come dice Astro, è SEMPRE una buona idea "fare quello che fa Apple" per quanto riguarda tutti i problemi idiomatici. Ma non per noi! – Fattie
tra l'altro per ogni giovane che legge. "New Math" era un'idea, sostanzialmente folle, introdotta da alcuni governi per insegnare matematica (intorno agli anni '70). era incredibilmente ridicolo e presto eliminato. – Fattie
La documentazione di Swift raccomanda che la parentesi graffa di apertura segua la riga di codice precedente, mentre la documentazione oggettiva C incoraggia l'inserimento della parentesi graffa di apertura sulla linea seguendo la linea di codice precedente. – ScottyBlades