Skip to content

Beiträge

Mit oder ohne geschweifte Klammern?

14. Oktober 2019 • 2 min Lesezeit

Mit oder ohne geschweifte Klammern?

Es gibt eine heftige Debatte über einzelne Anweisungen und ob sie geschweifte Klammern haben sollten oder nicht.

In C++, C#, Java und Javascript ist eine einzeilige Anweisung ohne geschweifte Klammern gültig. Einige nutzen diese Funktion, andere nicht.

Zum Beispiel

if(ifTrue) 
  MowTheLawn();

for(var index; index > 10; index++)
  ChopWood();

foreach(var dollar in money)
  BuyLollipop();

while(untilTheEnd)
  Read();

Argumente gegen einzeilige geschweifte Klammern

Das Argument gegen geschweifte Klammern ist die prägnantere Syntax, weniger Zeichen zum Tippen und gültige Syntax. Warum sollte man diese Funktion nicht nutzen?

Argumente für einzeilige geschweifte Klammern

Das Argument für geschweifte Klammern ist Konsistenz, weniger Fehler und natürlichere mentale Verarbeitung.

In einem Artikel von Jon Abrams mit dem Titel Single-line ‘if’ statements erklärt Jon, wie ein Fehler in Apples TLS-Implementierung aufgrund einer einzeiligen if-Anweisung ohne geschweifte Klammern eingeführt wurde. Jon sagt weiter, dass das Weglassen von geschweiften Klammern in einzeiligen Anweisungen zwar prägnanter ist, aber die Vermeidung von Fehlern wichtiger ist als Prägnanz.

Jon schlägt einen Kompromiss vor, um einzeilige Anweisungen zuzulassen, wenn sie wirklich auf einer einzigen Zeile stehen:

if(ifTrue) MowTheLawn();

Ich stimme Jons Gedanken zu. Das Weglassen der geschweiften Klammern in einzeiligen Anweisungen ist nicht den Nutzen wert, den es bietet. Es zwingt den Softwareingenieur, zwei Varianten gültiger Syntax zu berücksichtigen. Es mag nicht so schlecht erscheinen, aber es ist anstrengend, diese Entscheidung jedes Mal zu treffen, wenn man auf eine if-Anweisung stößt. Die nächste Auswirkung ist, dass der Ingenieur ein paar Tastenanschläge spart und die Last auf zukünftige Leser überträgt, um seinen Code zu analysieren.

Für C#-Softwareingenieure hat Microsoft in ihren Coding Conventions Stellung bezogen, die geschweifte Klammern fordern.

Wenn wir geschweifte Klammern in allen Fällen verwenden, unabhängig von der Anzahl der Zeilen, ist sehr klar, was im Gültigkeitsbereich liegt und was nicht. Dies macht den Code weniger fehleranfällig und konsistenter. Obwohl einige diesen Punkt argumentieren könnten, finde ich ihn leichter zu lesen.

Autor: Chuck Conway ist ein KI-Ingenieur mit fast 30 Jahren Erfahrung in der Softwareentwicklung. Er entwickelt praktische KI-Systeme – Content-Pipelines, Infrastruktur-Agenten und Tools, die echte Probleme lösen – und teilt seine Erkenntnisse unterwegs. Verbinden Sie sich mit ihm in den sozialen Medien: X (@chuckconway) oder besuchen Sie ihn auf YouTube und auf SubStack.

↑ Nach oben

Das könnte dir auch gefallen