Menu
Coddy logo textTech

Annotations de structures en ligne

Fait partie de la section Introduction à Luau du Journey Lua de Coddy — leçon 37 sur 73.

En Lua, vous utilisez des tables comme records depuis longtemps : local user = {name = "Ana", age = 20}. Rien ne vous empêche de mal orthographier un field, d'en oublier un ou de stocker une string là où un number a sa place — vous ne le découvrez que lorsque le code s'exécute.

Luau vous permet de décrire le shape d'une telle table directement dans la déclaration, en énumérant chaque field et son type entre accolades :

local user: {name: string, age: number} = {
    name = "Ana",
    age = 20,
}

Comparez cela avec les types de table que vous connaissez déjà : {number} décrit un tableau et {[string]: number} décrit une map avec n'importe quelles clés string. Un shape est plus précis — il nomme chaque field individuellement et donne à chaque field son propre type.

Une fois le shape déclaré, le vérificateur de type vérifie la table par rapport à celui-ci pendant que vous éditez. Un field manquant ou un type de valeur incorrect est signalé avant même que le code ne s'exécute :

local user: {name: string, age: number} = {
    name = "Ana",
    age = "twenty", -- ✗ erreur de type : string n'est pas un number
}

Comme toujours, l'annotation n'ajoute aucun comportement à l'exécution — la table est une simple table Lua. Les inline shapes sont parfaits pour les structures ponctuelles que vous ne prévoyez pas de réutiliser ; dans la prochaine leçon, vous donnerez un nom aux shapes.

challenge icon

Défi

Facile

Créez une variable nommée student avec une annotation de forme inline déclarant :

  • name de type string
  • studentId de type number
  • isEnrolled de type boolean

Initialisez-la avec le nom "Sarah Johnson", le studentId 12345 et isEnrolled true.

Créez une seconde variable nommée course avec une annotation de forme inline déclarant :

  • title de type string
  • credits de type number
  • instructor de type string

Initialisez-la avec le titre "Introduction to Luau", les crédits 3 et l'instructeur "Dr. Smith".

Affichez, chacun sur sa propre ligne :

  1. le nom de l'étudiant
  2. l'ID de l'étudiant
  3. le titre du cours
  4. le nombre de crédits

Essayez vous-même

-- Écrivez le code ici
-- 1) déclarez student avec une annotation de forme en ligne
-- 2) déclarez course avec une annotation de forme en ligne
-- 3) affichez les quatre champs demandés
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Introduction à Luau