Riepilogo: definire le forme delle tabelle
Fa parte della sezione Introduzione a Luau del percorso Lua di Coddy. Lezione 44 di 73.
Sfida
MedioCrea un alias di tipo chiamato Computer con:
iddi tiponumberbranddi tipostringramInGBdi tiponumber?(opzionale)boot: un metodo(self: Computer) -> ()
Crea due computer (assegna boot usando la sintassi di definizione con i due punti):
workstation: id1001, brand"Dell", ramInGB16; il suobootstampa[brand] is booting up...laptop: id1002, brand"MacBook", nessun ramInGB; il suobootstampa[brand] is starting...
Crea una funzione specs che accetta un Computer e restituisce una string: [brand] with [ramInGB] GB of RAM quando la RAM è nota, altrimenti [brand] with unknown RAM.
Poi, nell'ordine:
- chiama
workstation:boot() - chiama
laptop:boot() - stampa
specs(workstation) - stampa
specs(laptop) - stampa l'id di
workstation
Provalo tu
-- Scrivi il codice qui
-- 1) definisci il tipo Computer (ramInGB facoltativo, metodo boot)
-- 2) crea workstation e laptop, associa boot usando la sintassi con i due punti
-- 3) scrivi specs con un controllo di nil su ramInGB
-- 4) avvia entrambi, stampa entrambe le specs, stampa workstation.id
Tutte le lezioni di Introduzione a Luau
1Per iniziare con Luau
Che cos'è Luau?Perché usare Luau?Il tuo primo codice LuauVerifica dei tipi e modalità di erroreRiepilogo: introduzione a Luau4Lavorare con le funzioni
Tipizzare i parametri e i valori restituitiTipizzare le funzioni anonimeFunzioni che non restituiscono nullaParametri opzionaliValori predefiniti dei parametriFunzioni variadicheDefinire i tipi di funzioneRiepilogo: funzioni tipizzate2Tipi fondamentali
Tipi di base: num, str, boolIl tipo 'any': una via di fugaIl tipo 'unknown'Nil e tipi opzionaliL'inferenza dei tipi in azioneAnnotazioni esplicite dei tipiRipasso: esercizi sui tipi fondamentali5Alias, unioni e intersezioni
Alias di tipo per i primitiviTipi unioneLavorare con i tipi unioneTipi letteraliTipi intersezioneCombinare gli alias di tipoRiepilogo: combinazioni avanzate di tipi3Tabelle tipizzate: array e mappe
Array tipizzatiAggiungere e leggere elementiChe cos'è un tipo Map?Dichiarare e accedere alle mappeIterare sulle tabelleTabelle con strutture misteArray tipizzati multidimensionalitable.unpack e argomenti variabiliRiepilogo: array e mappe6Tipizzare le forme delle tabelle
Annotazioni inline delle formeAlias di tipo per le formeProprietà opzionaliForme e tabelle libere a confrontoEstendere le formeAggiungere metodi alle formeSelf e metodi con i due puntiRiepilogo: definire le forme delle tabelleEsercitati da solo: Compilatore Luau online