Menu
Coddy logo textTech

Annotazioni inline delle forme

Fa parte della sezione Introduzione a Luau del percorso Lua di Coddy. Lezione 37 di 73.

In Lua hai usato le tabelle come record già da molto tempo: local user = {name = "Ana", age = 20}. Nulla ti impedisce di scrivere male il nome di un campo, dimenticarne uno o memorizzare una stringa dove dovrebbe esserci un numero. Te ne accorgi solo quando il codice viene eseguito.

Luau ti permette di descrivere la forma di una tabella direttamente nella dichiarazione, elencando ogni campo e il suo tipo tra parentesi graffe:

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

Confrontala con i tipi di tabella che già conosci: {number} descrive un array e {[string]: number} descrive una mappa con chiavi stringa qualsiasi. Una forma è più precisa. Assegna un nome a ogni campo individualmente e specifica il tipo di ciascun campo.

Una volta dichiarata la forma, il controllo dei tipi verifica la tabella confrontandola con essa mentre modifichi il codice. Un campo mancante o un valore del tipo sbagliato viene segnalato prima ancora che il codice venga eseguito:

local user: {name: string, age: number} = {
    name = "Ana",
    age = "twenty", -- ✗ errore di tipo: string non è number
}

Come sempre, l'annotazione non aggiunge alcun comportamento in fase di esecuzione: la tabella è una normale tabella Lua. Le forme inline sono perfette per strutture occasionali che non prevedi di riutilizzare; nella prossima lezione darai un nome alle forme.

challenge icon

Sfida

Facile

Crea una variabile denominata student con un'annotazione della forma inline che dichiari:

  • name di tipo string
  • studentId di tipo number
  • isEnrolled di tipo boolean

Inizializzala con name "Sarah Johnson", studentId 12345 e isEnrolled true.

Crea una seconda variabile denominata course con un'annotazione della forma inline che dichiari:

  • title di tipo string
  • credits di tipo number
  • instructor di tipo string

Inizializzala con title "Introduction to Luau", credits 3 e instructor "Dr. Smith".

Stampa, ciascuno su una riga:

  1. il nome dello studente
  2. l'ID dello studente
  3. il titolo del corso
  4. il numero di crediti

Provalo tu

-- Scrivi il codice qui
-- 1) dichiara student con un'annotazione della struttura in linea
-- 2) dichiara course con un'annotazione della struttura in linea
-- 3) stampa i quattro campi richiesti
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Introduzione a Luau

Esercitati da solo: Compilatore Luau online