Variables

Site: QSC
Course: Q-SYS Control 101 Training (French)
Book: Variables
Printed by: Guest user
Date: Thursday, 26 December 2024, 10:38 AM

Description

Description de la leçon

Simplifiez le code en utilisant des variables pour référencer des objets dans Lua et le Block Controller 

Transcription Vidéo

0:08
Parlons des variables. On entend souvent le mot « variables » dans les films de braquage de banque
0:13
lorsqu'ils parlent de choses qui pourraient mal tourner. Vous pouvez entendre une variable être définie
0:18
comme étant « connue-inconnue » – une chose dont vous savez qu'elle existe, mais dont vous ne savez
0:22
pas ce que c'est. Mais souvent, dans les scripts, vous saurez bien ce qu’est votre variable, et vous
0:27
choisirez juste d'en utiliser une pour rendre votre script plus facile à écrire. Je préfère considérer une
0:33
variable comme l'étiquette pratique d'une valeur qui peut ou non changer.
0:39
En algèbre, vous avez probablement vu x, y et z souvent utilisées comme variables : ce ne sont que des
0:45
lettres représentant un autre nombre. Dans Lua, vous pouvez définir ces variables rien qu’en tapant leur
0:51
nom, le signe égal, puis ce que vous voulez que la variable représente.
0:56
Mais vous n'êtes pas limité aux simples lettres ou chiffres. Vous pouvez utiliser des mots entiers pour
1:01
représenter des variables, et une variable peut définir une valeur numérique, une chaîne de caractères,
1:08
ou une propriété de contrôleur, ou même une fonction complète ou plus encore.
1:12
Voici un exemple d'utilisation d'une variable pour représenter une valeur changeante. Je vais assigner la
1:17
variable « s » à la chaîne « Hello », puis l’imprimer avec « print(s) ». Cela imprime la variable s et non
1:24
littéralement le caractère « s ». Ensuite, je vais réassigner la variable « s » à la chaîne « World » et à
1:32
nouveau l’imprimer.
1:33
Les deux commandes « print(s) » sont identiques, mais comme la variable a changé entre les deux
1:38
pendant que le compilateur parcourt le script, nous obtenons deux résultats différents, basés sur ce
1:43
qu’était la variable au moment où la commande a été émise.
1:48
De même, vous pouvez utiliser une variable pour représenter la valeur ou la chaîne d'un contrôleur. Ces
1:54
informations ne sont pas définies dans votre script, elles proviennent de l'environnement Q-SYS normal.
2:00
Mais quand vous imprimez votre variable, cela vous donne l'état actuel de ce contrôleur.
2:05
Souvent, vous pouvez utiliser une variable comme un raccourci facile pour quelque chose qui est utilisé
2:10
plusieurs fois. Imaginons un script plus grand avec plusieurs fonctions devant toutes renvoyer une
2:16
chaîne « Message Complete ».
2:19
Pour changer cette chaîne, il faudrait la chercher dans chaque fonction et la changer ligne par ligne, ou
2:26
vous pourriez utiliser d‘entrée une variable. Vous pouvez alors définir votre variable au début du script,
2:32
de sorte que vous n'avez besoin de la modifier qu'à un seul endroit et ce changement sera reporté dans
2:37
chaque référence à cette variable.
2:40
Ces variables que nous avons créées sont appelées variables globales, car elles sont valables dans tout
2:45
votre script. Parfois, vous pouvez vouloir créer une variable locale, qui sera définie dans le corps d'une
2:51
fonction ou d'une structure de contrôleur pour que cette variable ne soit valide que dans le cadre de
2:56
cette fonction. Si vous avez par exemple plusieurs fonctions qui font toutes des choses très similaires, il
3:02
pourrait être fastidieux d'utiliser des variables globales telles que output1, output2, output3, etc. Au lieu
3:08
de cela, chaque fonction pourrait créer sa propre variable locale appelée « output » qui n'interagirait
3:13
jamais avec quoi que ce soit en dehors de sa fonction. Nous verrons comment créer des fonctions dans
3:17
la prochaine vidéo.
3:18
Dans le Block Controller, vous pouvez manipuler des variables avec les blocs que vous trouverez dans
3:23
l'onglet « Variables et fonctions ». Utilisez le bloc « Create » pour créer une nouvelle variable, que vous
3:29
pouvez ensuite définir (ou non) de l'autre côté du signe égal.
3:34
Vous pouvez ensuite régler cette variable sur une nouvelle valeur à l'aide du bloc « set ». Si vous avez
3:40
besoin de faire référence à cette variable, vous pouvez utiliser ce bloc-ci avec le nom de la variable. Si je
3:46
voulais imprimer une variable définie par l'une des valeurs de mon contrôleur, je pourrais le faire ainsi.
3:52
Lorsque vous aurez créé plusieurs variables, vous verrez que leurs noms sont tous disponibles dans le
3:56
menu déroulant. Vous remarquerez que le nom de la variable par défaut est « foo », comme dans les Foo Fighters.
4:06
Et oui. Les Foo Fighters. D'accord, mais sérieusement, si vous n'aimez pas le nom Foo, vous pouvez bien
4:13
sûr le changer, mais c'est un bon nom. Pour les anglophiles et ceux d'entre vous qui connaissent bien le
4:19
répertoire des Foo Fighters, permettez-moi de dire ceci. All My Life, j'ai eu affaire à des variables, et une
4:26
bonne variable globale est My Hero. Il n'y a aucune raison de jeter une Monkey Wrench dans votre
4:31
script dans des Times Like These. Pensez à une variable comme le Pretender, qui peut représenter tout
4:37
ce que vous voulez. Elle donnera le Best of You… et avec elle votre projet durera… Everlong.
4:45
Une dernière chose dans le Block Controller, notez qu'il sait que la variable est globale. Alors que si vous
4:52
créez cette variable dans un bloc de fonction, il comprend automatiquement qu'il s'agit d'une variable
4:58
locale. Vous n'avez pas besoin de choisir l'une ou l'autre.
5:02
En outre, dans Block Controller, vous ne pouvez utiliser le bloc Create qu'une seule fois pour chaque
5:07
variable. Une fois la variable créée, vous ne pouvez la modifier qu'à l'aide du bloc Set. Dans Lua, vous
5:14
pouvez utiliser la même commande pour créer ou redéfinir une variable, comme vous pouvez le voir
5:19
dans l'onglet Lua de ces blocs : « foo='awesome' » et « foo='moreawesome' » mais le Block Controller a
5:26
besoin de ces deux concepts séparés.
5:29
Et c'est tout pour les variables. Nous avons un exercice sur les variables dans votre Cahier d'exercices Q-SYS
5:34
Contrôle, et une fois fait, nous parlerons des fonctions.