Kapitel 2: Grundlagen / 2.1 Variablen und Konstanten / 2.1.2 Benennung von Variablen und Konstanten

In sehr vielen Programmiersprachen dürfen sich Variablennamen nur aus Buchstaben aus dem englischen Alphabet, Zahlen und einigen Sonderzeichen wie dem Unterstrich zusammensetzen. Bei Swift ist die Liste der erlaubten Zeichen deutlich länger:

In Swift kann praktisch jedes Unicode Zeichen für Variablennamen verwendet werden. Unicode ist ein Standard zur Beschreibung von Zeichen, der – vereinfacht gesprochen – alle Schriftzeichen der Welt umfasst.

Beispielsweise sind folgende Konstantennamen technisch erlaubt:

let π = 3.14159
let anzahlRezepteFürSüßeKnödel = 7
let 今日は = "今日は世界"
let ☺ = "Tolle Sache!"

Einiges darf jedoch nicht in Variablen- oder Konstantennamen verwendet werden:

  • einige mathematische Symbole
  • Pfeile
  • für den privaten Gebrauch reservierte oder aus anderen Gründen unbelegte Unicode Zeichen
  • viele Zeichen, die Linien oder Rechtecke zeichnen
  • von Swift reservierte Schlüsselwörter oder Zeichen
  • Variablen- oder Konstantennamen dürfen nicht mit einer Zahl beginnen.

Apple liefert hier aber keine genaue Liste, d.h. welches Zeichen Teil eines Variablen- oder Konstentennamens sein darf sehen Sie genaugenommen erst dann, wenn sie es verwenden und der Compiler grünes oder rotes Licht gibt.

Swift unterscheidet bei Variablen- und Konstantennamen zwischen Groß- und Kleinschreibung, einfach weil große und kleine Buchstaben für Unicode unterschiedliche Zeichen sind.

Um ein Swift-Schlüsselwort als Variablen- oder Konstantennamen zu verwenden, kann es in rückwärtsfallende einfache Anführungsstriche geklammert werden. Verwenden Sie das aber bitte nur im absoluten Notfall (also am besten nie):

let `let` = "Tun Sie so etwas bitte nicht."

Das führt mich zu den Konventionen bezüglich der Benennung von Variablen und Konstanten, da gibt es einige. Obwohl Sie es technisch nicht müssen, sollten Sie sich an folgende Regeln halten:

  • Variablen- oder Konstantennamen verwenden grundsätzlich Kleinbuchstaben.
  • Setzt sich ein Name aus mehreren Wörtern zusammen, werden alle Wörter ohne Leerzeichen aneinandergesetzt und es wird – mit Ausnahme des ersten Wortes – der erste Buchstabe eines jeden Wortes großgeschrieben, z.B. anzahlRezepteFürSüßeKnödel.
  • (Programm-)technisch verwendete Namen werden englisch benannt.
  • Fachlich verwendete Namen benennen Sie bitte deutsch, einschließlich der Umlaute.
  • Vermeiden Sie sie ansonsten die Verwendung von Sonderzeichen, es sei denn, sie machen eindeutig Sinn, wie z.B. das Zeichen π zur Benennung der Kreiszahl Pi. Oder natürlich, als Ausnahme, um sich einen Spaß zu machen.
  • Verwenden Sie bei der Benennung sprechende Namen, die man sofort zuordnen kann und keine Abkürzungen. Nennen Sie eine Variable z.B. einkommensteuerbescheid und nicht esb.
  • Verwenden Sie Namen, die dem Inhalt genau entsprechen: rezepteFürSüßeKnödel enthält die tatsächlichen Rezepte (als Objekte), anzahlRezepteFürSüßeKnödel enthält deren Anzahl (als Zahl).
  • Formulieren Sie Boolean-Variablen (solche, die den Inhalt true oder false haben können) als Frage, die durch den Inhalt beantwortet wird. Beginnen Sie den Namen im Englischen mit is oder has, z.B. isMemberOfCollection = true. Im Deutschen verfahren Sie entsprechend.
  • In einigen Sprachen ist es üblich, Konstanten durchgängig mit Großbuchstaben zu benennen. Tun Sie das in Swift bitte nicht.

Die Verwendung von deutschen und englischen Konstanten- und Variablennamen wird von verschiedenen Leuten unterschiedlich gesehen. Für durchgängiges Englisch spricht – neben der Tradition – dass der Code auch von Programmierern verstanden werden kann, die nicht Deutsch sprechen. Für die Verwendung von Deutsch spricht, dass in der Realität die Entwickler um einen herum und auch Sie selbst meist eben doch besser Deutsch als Englisch sprechen und die Variable einkommensteuerbescheid ansonsten in noticeOfIncomeTaxAssessment umbenannt werden müsste, was fachlich nicht nur etwas anderes sein kann (weil es die englische Variante eines Einkommensteuerbescheids benennt und nicht die deutsche), sondern auch von vielen Deutschen gar nicht ohne Nachschlagen verstanden wird. Daher ist die parallele Verwendung ein praktikabler Kompromiss. Wenn Sie sich für diese oder eine andere Konvention entscheiden, dann verwenden Sie sie diese eine bitte durchgängig in Ihrem gesamten Code. Und wenn Sie in einer Gruppe arbeiten, dann vereinbaren Sie Konventionen, an die sich dann alle halten.

Letztlich aber gilt, und das bezieht sich auf alle aufgeführten Konventionen: Keine Regel ohne Ausnahme. Wer sklavisch alles richtig macht, macht auch etwas falsch. Oberste Priorität bei der Gestaltung von Quellcode hat dessen Lesbarkeit, und Sie entscheiden, wann die für Sie am besten gegeben ist.

Kapitel 2.1.2: Benennung von Variablen und Konstanten

2 Gedanken zu „Kapitel 2.1.2: Benennung von Variablen und Konstanten

  • 23. Oktober 2014 um 12:04
    Permalink

    Guten Tag und Danke für das Tutorial,

    Sie schreiben, dass Variablen- oder Konstantennamen nicht mathematische Symbole enthalten dürfen doch die Kreiszahl π ist ein mathematisches Symbol und ist in Swift zulässig, wie Sie ebenfalls zu Ausdruck bringen. Ist dies ein Wiederspruch oder verstehe ich da etwas nicht richtig?

    Viele Grüße, Altan

    Antworten
    • 23. Oktober 2014 um 16:29
      Permalink

      Hallo Altan,

      Sie haben Recht, in der Tat können viele mathematische Zeichen als Teil von Variablen- oder Konstantennamen verwendet werden. Apples Spezifikation ist an dieser Stelle falsch und ich habe das nicht ausreichend überprüft.

      Ich habe den Text entsprechend geändert: Das Wort Symbole durch Zeichen ersetzt, durch das Wort „einige“ und „viele“ in der Aufzählung hinzugefügt, um die Aussagen abzuschwächen und einen erklärenden Satz angehängt.

      Vielen Dank für Ihren Hinweis.

      Markus.

      Antworten

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.