In Lektion 2 hast du einige der gängigeren Typen und die damit verbundenen Operationen und Werte kennengelernt. Jetzt wollen wir lernen, wie du diese Typen und Werte in deinem Code verwendest.
Die Werte, die von Ausdrücken verwendet werden, werden manchmal auch als Informationen oder Daten bezeichnet. Programme brauchen Daten, um zu wissen, was sie tun sollen, und es gibt verschiedene Möglichkeiten, die Daten oder Werte zu speichern.
Es gibt auch verschiedene Arten von Daten.
Veränderlich und unveränderlich
Veränderlich (engl. „mutable“) bedeutet, dass sich etwas ändern kann. Denk an einen Mutanten – jemand, dessen DNA-Code verändert oder mutiert ist.
Die Wellen am Ufer sind veränderlich, sie ändern sich ständig.
Wenn etwas unveränderlich (engl. „immutable“) ist, kann es nicht geändert werden. Abgesehen von Erdbeben, Flutwellen, Explosionen und Erosion ist die Klippe über dem Strand unveränderlich.
Aber was hat das mit Code zu tun?
Wenn ein Wert nicht geändert werden kann, während das Programm läuft, ist er unveränderlich. Ändert sich der Wert während der Ausführung des Programms aufgrund von Eingaben von anderer Stelle, ist der Wert veränderlich.
Verse verfügt über eingebaute Typen, die grundlegende Operationen unterstützen, welche die meisten Programme benötigen, um zu laufen. Diese eingebauten Typen sind die Grundlage für die Verwendung von Variablen und Konstanten in Verse.
Variablen und Konstanten
In der Programmierung verwendest du Variablen und Konstanten, um Werte zu speichern, die dein Programm verwendet.
Wenn das Programm Daten benötigt, um zu bestimmen, was als Nächstes geschieht, basieren die Berechnungen und Entscheidungen des Computers auf den Werten, die in den Variablen und Konstanten des Codes gespeichert sind.
Zwar wird der Begriff Variable manchmal allgemein verwendet, um sowohl Variablen als auch Konstanten zu beschreiben; doch es gibt einen wichtigen Unterschied: Variablen können ihre Werte ändern, während ein Programm läuft, aber konstante Werte können nicht geändert werden, während das Programm läuft. Mit anderen Worten: Der Wert einer Variable ist veränderlich, der Wert einer Konstante ist unveränderlich.
Syntax für Variablen und Konstanten
Die Syntax für eine Variable ist:
Das var am Anfang der Zeile zeigt, dass es sich um eine Variable handelt.
Die grundlegende Syntax für eine Konstante ist:
Beachte, dass der einzige Unterschied in der Syntax von Variablen und Konstanten darin besteht, dass bei einer Konstante das var entfernt wird, welches bei einer Variablen eingefügt wird.
Was sagt diese Syntax nun eigentlich aus?
name |
Beachte, dass |
type |
Der Typ erklärt, was mit dem Wert in dieser Variablen gemacht werden kann. Beachte, dass Name und Typ durch einen Doppelpunkt : voneinander getrennt werden. |
value |
Bei einer Konstante bleibt dieser Wert, wie der Name schon sagt, konstant. Bei einer Variablen ist dies der Wert, mit dem die Variable beginnt, obwohl er sich während der Programmausführung ändern (variieren) kann. Dies ist der Anfangswert. Beachte, dass ein Das Setzen eines Anfangswerts für eine Variable ist optional, aber es ist eine gute Vorgehensweise, dies zu tun. Für eine Konstante ist es erforderlich, den Wert zu setzen. |
Kennung
Eine Kennung ist der einzigartige Name, den Programmierende einem Ausdruck geben.
Die Wörter Kennung und Name sind synonym.
Benennungsregeln und -konventionen
In Verse gibt es Regeln für die Benennung von Dingen. Wenn du Variablen oder Konstanten erstellst, solltest du die folgenden Benennungsregeln beachten:
- Gib deinen Variablen (und anderen Ausdrücken) nach Möglichkeit Namen, die aussagen, was sie bewirken.
- Es ist eine gute Vorgehensweise, deine Variablen einheitlich zu benennen, damit dein Code für andere leichter zu lesen ist (und du ihn dir leichter merken kannst!).
- Das erste Zeichen in der Kennung muss entweder ein Buchstabe oder ein Unterstrich (_) sein.
- Die Zeichen nach dem ersten Zeichen müssen Buchstaben, Zahlen oder ein Unterstrich sein. Du kannst auch mehr als einen Unterstrich im Namen haben oder sogar zwei oder mehr Unterstriche zusammen.
- Weder Variablen- noch Konstantenkennungen dürfen Leerzeichen enthalten.
- In Verse gilt die Berücksichtigung der Groß-/Kleinschreibung. Daher ist es wichtig, Großbuchstaben einheitlich zu verwenden. Andernfalls führt dies zu Fehlern im Code.
Eine vollständige Anleitung zu den Benennungskonventionen in Verse findest du im Verse Code Style Guide.
Deklaration einer Variablen
Jede Variable oder Konstante besteht aus drei grundlegenden Teilen: einer Kennung (dem Namen), dem Typ des Wertes, den sie speichern kann, und dem Wert selbst.
var name : type = value
In Verse erstellst du eine Variable, indem du sie deklarierst. Um sie zu deklarieren, muss die Variable über alle drei Teile verfügen: die Kennung, den Typ und den Wert.
Initialisierung
Das Setzen eines Anfangswertes für eine Konstante (oder einen anderen Ausdruck) wird Initialisierung genannt. Wenn du eine Variable oder Konstante deklarierst, ist es erforderlich zu initialisieren.
Mit dem Operator : = kannst du Werte in einer Konstanten oder Variablen initialisieren.
Beachte, dass bei diesem Operator der Name vor dem : steht, der Typ zwischen dem : und dem = und der Wert nach dem = kommt.
var Coins : int = 500
Effektive Verwendung von Konstanten
Wenn ein Wert an mehreren Stellen in deinem Code auftaucht und sich nie ändert, ist es sinnvoll, eine Konstante zu verwenden.
Erinnerst du dich an die Literale aus Lektion 2? Ein Literal ist ein Wert, der sich nie ändert. Idealerweise solltest du Literale sparsam verwenden.
Wenn dein Spiel den Spieler zum Beispiel mit hundert Münzen eine Mausefalle kaufen lässt, könntest du den (unveränderlichen) Literalwert „100“ in das Programm schreiben, wann immer der Code von Coins subtrahiert, wenn der Spieler eine Mausefalle kauft. Oder (was noch viel besser wäre!) du könntest eine Konstante, wie CoinsPerMousetrap, deklarieren und verwenden, die den Wert 100 enthält.
CoinsPerMousetrap : int = 100
Die Verwendung von Konstanten auf diese Weise macht deinen Code sowohl für dich als auch für deine Teammitglieder leichter lesbar, falls jemand einen Code nachträglich ändern will, der lange Zeit nicht bearbeitet worden ist.
Dein Code ist auch für andere Programmierende leichter zu verstehen, wenn du gut benannte Konstanten anstelle von unerklärten Literalwerten verwendest.
Konstanten auf diese Weise zu verwenden, birgt einen weiteren Vorteil: Wenn du einen Wert änderst, z. B. wie viel eine Mausefalle kosten soll, musst du nur die Konstante aktualisieren und nicht jede einzelne Instanz, in der dieser Wert verwendet wird.
Verwende nach Möglichkeit eindeutige Namen für deine Konstanten. Das obige Beispiel CoinsPerMousetrap stellt eindeutig eine Konstante für die Anzahl der Münzen dar, die der Spieler beim Kauf einer Mausefalle ausgibt.
Wenn du einen Wert hast, der sich nicht ändert, speichere diesen Wert mit einer Konstante.
Zuweisung eines Wertes an eine Variable
Im Gegensatz zu Konstanten können die Werte von Variablen während der Programmausführung geändert werden.
Konstanten ersparen dir die wiederholte Eingabe desselben Wertes, aber was ist der Vorteil einer Variablen?
Nun, manchmal möchtest du in der Lage sein, einen Wert auf der Grundlage eines anderen Inputs zu ändern.
Wenn der Spieler zum Beispiel eine Mausefalle kauft, kannst du diese Codezeile verwenden, um die Anzahl der Münzen, die der Spieler für eine Mausefalle ausgibt, von der Gesamtzahl seiner Münzen zu subtrahieren.
set Coins = Coins - CoinsPerMousetrap
Schlüsseln wir diese Codezeile auf:
Der erste Teil, set, ist ein in Verse eingebautes Schlüsselwort. Mit dem Schlüsselwort set kann der Wert einer Variablen geändert werden. Diese Codezeile besagt also, dass Coins so geändert werden kann, dass es dem Wert von Coins minus CoinsPerMousetrap entspricht.
Diese Änderung des Wertes anhand von set kann nur mit einer Variablen vorgenommen werden. Du kannst set nicht mit einer Konstanten verwenden.
Sowohl Coins als auch CoinsPerMousetrap wären in diesem Fall Kennungen für Ausdrücke, die bereits im Programm existieren.
Zusammenfassung
- Variablen und Konstanten werden beide zum Speichern von Werten verwendet.
- Der Hauptunterschied zwischen den beiden besteht darin, dass der Wert einer Konstanten nicht geändert werden kann, während das Programm läuft, der Wert einer Variablen jedoch schon.
- Variablen und Konstanten sind Ausdrücke, die Ergebnisse erzeugen, wenn sie ausgewertet werden.
- Variablen und Konstanten werden in Verse deklariert. Dazu werden dem Ausdruck ein einzigartiger Name oder eine Kennung, ein Typ und ein Wert zugewiesen.
- Wenn du für einen Ausdruck einen Anfangswert setzt, wird dies Initialisierung genannt.