Dans la leçon 2, vous avez examiné certains des types les plus courants ainsi que les opérations et valeurs qui leur sont associées. Vous devez maintenant apprendre comment utiliser ces types et ces valeurs dans votre code.
Les valeurs que les expressions utilisent sont parfois appelées informations ou données. Les programmes ont besoin de données pour savoir quelles tâches exécuter, et il existe différentes façons de stocker ces données, ou valeurs.
Il existe par ailleurs différents types de données.
Valeurs mutables et immuables
Mutable signifie susceptible de changer. Pensez à un mutant, c’est-à-dire une personne dont le code ADN a changé, ou muté.
Les vagues le long du rivage sont mutables, et changent constamment.
Lorsqu’une chose est immuable, elle ne peut pas changer. Sauf en cas de tremblements de terre, de raz-de-marée, d’explosions ou d'érosion, la falaise qui surplombe la plage est immuable.
Mais qu'est-ce que cela a à voir avec le code ?
S’il est impossible de modifier une valeur lors de l'exécution du programme, cette valeur est immuable. Si la valeur change pendant l'exécution du programme en fonction d'une commande ailleurs dans le jeu, la valeur est mutable.
Verse dispose de types intégrés qui prennent en charge les opérations de base dont la plupart des programmes ont besoin pour fonctionner. Ces types intégrés constituent la base de l'utilisation des variables et des constantes dans Verse.
Variables et constantes
En programmation, vous utilisez des variables et des constantes pour stocker les valeurs que votre programme utilise.
Lorsque le programme nécessite des données pour déterminer ce qui doit se passer ensuite, les calculs et les décisions que prend l’ordinateur dépendent des valeurs stockées dans les variables et les constantes du code.
Bien que le terme variable soit parfois utilisé de manière générique pour englober à la fois les variables et les constantes, il existe une différence importante : les variables peuvent modifier leurs valeurs pendant l'exécution d'un programme, mais il est impossible de modifier les constantes pendant l'exécution du programme. En d'autres termes, la valeur d'une variable est mutable, tandis que la valeur d'une constante est immuable.
Syntaxe des variables et des constantes
La syntaxe d'une variable est la suivante :
L’indication var au début de la ligne indique qu’il s’agit d’une variable.
La syntaxe de base d'une constante est la suivante :
Notez que la seule différence de syntaxe entre une variable et une constante est que var est supprimé pour une constante, mais inclus pour une variable.
Cette syntaxe est la suivante :
name |
|
type |
Le type détermine ce que peut exécuter la valeur de cette variable. Notez que le signe deux-points : sépare le nom et le type. |
value |
Pour une constante, cette valeur reste… constante ! Pour une variable, il s'agit de la valeur de départ de la variable, mais celle-ci peut changer (varier) pendant l'exécution du programme. Il s’agit de la valeur initiale. Notez que Bien qu’il ne soit pas obligatoire de définir une valeur initiale pour une variable, nous vous conseillons de le faire. En revanche, la définition de la valeur est nécessaire pour une constante. |
Identificateur
Un identificateur est le nom unique qu'un programmeur donne à une expression.
Les termes identificateur et nom sont synonymes.
Règles et conventions d'affectation de noms
Il existe des conventions d’affectation de noms pour nommer les différents éléments dans Verse. Lorsque vous créez des variables et des constantes, gardez à l'esprit les règles d’affectation de noms suivantes :
- Dans la mesure du possible, donnez à vos variables (et autres expressions) des noms qui indiquent ce qu'elles font.
- Nous vous conseillons de nommer vos variables d'une manière cohérente, afin que votre code soit plus facile à lire et à mémoriser, tant pour vous que pour les autres personnes qui y ont accès.
- Le premier caractère de l’identificateur doit être soit une lettre soit le trait de soulignement (
_). - Les caractères après le premier caractère doivent être des lettres, des chiffres ou le trait de soulignement. Vous pouvez également utiliser plusieurs traits de soulignement dans le nom, voire deux ou plusieurs traits de soulignement consécutifs.
- Les identificateurs de variables et de constantes ne peuvent pas contenir d'espaces.
- Verse est sensible à la casse ; il est donc important d'être cohérent lors de la mise en majuscules. Si vous ne l’êtes pas, des erreurs risquent de se produire dans votre code.
Pour un guide complet sur les conventions d'affectation de noms dans Verse, consultez le Guide de style du code Verse.
Déclarer une variable
Chaque variable ou constante comporte trois éléments de base : un identificateur (le nom), le type de valeur qu'elle peut stocker et la valeur proprement dite.
var name : type = value
Dans Verse, vous créez une variable en la déclarant. Pour la déclarer, la variable doit comporter ces trois parties : l’identificateur, le type et la valeur.
Initialisation
L’opération qui consiste à définir une valeur initiale sur une constante (ou toute autre expression) est appelée initialisation. L'initialisation est nécessaire lorsque vous déclarez une variable ou une constante.
L’opérateur : = vous permet d’initialiser des valeurs dans une constante ou une variable.
Notez qu'avec cet opérateur, le nom est placé avant :, le type entre : et =, et la valeur après =.
var Coins : int = 500
Utiliser efficacement les constantes
Lorsqu’une valeur apparaît à plusieurs endroits dans votre code, mais ne change pas, il est judicieux d'utiliser une constante.
Consultez la leçon 2 concernant les littéraux. Un littéral est une valeur qui ne change jamais. Dans l’idéal, vous devez utiliser les littéraux avec parcimonie.
Par exemple, si votre jeu permet au joueur d'acheter un piège à souris avec cent pièces, vous pouvez écrire la valeur littérale (immuable) 100 dans le programme à l'endroit où le code soustrait Coins lorsque le joueur achète une souricière ou (mieux encore) vous pouvez déclarer et utiliser une constante telle que CoinsPerMousetrap, qui contient la valeur 100.
CoinsPerMousetrap : int = 100
Utiliser les constantes de cette manière facilite la lecture de votre code, tant pour vous que pour vos coéquipiers, au cas où une personne modifierait ultérieurement un code resté inchangé depuis un certain temps.
Votre code sera également plus facile à comprendre pour les autres programmeurs si vous utilisez des constantes correctement nommées au lieu de valeurs littérales sans explication.
L’utilisation de constantes présente un autre avantage : si vous décidez de modifier une valeur, par exemple le prix d'un piège à souris, vous devez mettre à jour uniquement la constante, et non chaque instance où cette valeur est utilisée.
Dans la mesure du possible, utilisez des noms clairs pour nommer vos constantes. L'exemple ci-dessus, CoinsPerMousetrap, représente clairement une constante pour le nombre de pièces que le joueur doit dépenser pour acheter une souricière.
Si vous disposez d’une valeur qui ne changera pas, stockez-la avec une constante.
Affecter une valeur à une variable
Il est possible de modifier les valeurs d’une variable pendant l'exécution du programme, ce qui n’est pas le cas pour les valeurs d’une constante.
Comme nous l’avons vu, les constantes vous évitent de saisir la même valeur à plusieurs reprises ; mais quel est l'avantage d'utiliser une variable ?
Dans certains cas, il est nécessaire de modifier une valeur en fonction d'une autre commande.
Par exemple, si le joueur achète un piège à souris, vous pouvez utiliser cette ligne de code pour soustraire le nombre de pièces que le joueur utilise pour acheter le piège du nombre total de pièces dont il dispose :
set Coins = Coins - CoinsPerMousetrap
Analysons cette ligne de code :
La première partie, set, est un mot-clé intégré à Verse. Il est possible d’utiliser le mot-clé set pour modifier la valeur d'une variable ; cette ligne de code indique ainsi qu’il est possible de modifier Coins afin qu’il soit égal à la valeur de Coins moins CoinsPerMousetrap.
Ce changement de valeur à l’aide du mot-clé set n’est possible qu'avec une variable. Vous ne pouvez pas utiliser set avec une constante.
Dans ce cas, Coins et CoinsPerMousetrap sont des identificateurs pour des expressions qui existent déjà dans le programme.
Récapitulatif
- Les variables et les constantes sont toutes deux utilisées pour stocker des valeurs.
- La principale différence entre les deux est que la valeur d'une constante ne peut pas être modifiée pendant l'exécution du programme, contrairement à la valeur de la variable.
- Les variables et les constantes sont des expressions qui produisent des résultats lorsqu'elles sont évaluées.
- Les variables et les constantes sont déclarées dans Verse. Pour ce faire, il convient de donner à l'expression un nom ou un identificateur unique, et de lui attribuer un type et une valeur.
- L’opération qui consiste à définir une valeur initiale sur une expression est appelée initialisation.