Zusammenfassung: Definieren von Tabellen-Shapes
Teil des Abschnitts Einführung in Luau der Lua-Journey von Coddy. Lektion 44 von 73.
Aufgabe
MittelErstelle einen Typalias namens Computer mit:
idvom Typnumberbrandvom TypstringramInGBvom Typnumber?(optional)boot: eine Methode(self: Computer) -> ()
Erstelle zwei Computer (binde boot mit der Definitionssyntax mit Doppelpunkt an):
workstation: ID1001, Marke"Dell", ramInGB16; seinbootgibt[brand] is booting up...auslaptop: ID1002, Marke"MacBook", kein ramInGB; seinbootgibt[brand] is starting...aus
Erstelle eine Funktion specs, die einen Computer entgegennimmt und einen string zurückgibt: [brand] with [ramInGB] GB of RAM, wenn der RAM bekannt ist, andernfalls [brand] with unknown RAM.
Führe anschließend der Reihe nach Folgendes aus:
- Rufe
workstation:boot()auf - Rufe
laptop:boot()auf - Gib
specs(workstation)aus - Gib
specs(laptop)aus - Gib die ID von
workstationaus
Probier es selbst
-- Schreibe Code hier
-- 1) definiere Typ Computer (optional ramInGB, boot-Methode)
-- 2) erstelle workstation und laptop, hänge boot mit Doppelpunkt-Syntax an
-- 3) schreibe specs mit einer nil-Prüfung auf ramInGB
-- 4) boote beide, gib beide specs aus, gib workstation.id aus
Alle Lektionen in Einführung in Luau
1Erste Schritte mit Luau
Was ist Luau?Warum Luau nutzen?Dein erster Luau-CodeTypprüfung & FehlermodiZusammenfassung: Einführung in Luau4Arbeiten mit Funktionen
Typisierung von Parametern & RückgabewertenTypisierung von anonymen FunktionenFunktionen ohne RückgabewertOptionale ParameterStandard-ParameterwerteVariadische FunktionenDefinieren von FunktionstypenZusammenfassung: Typisierte Funktionen2Grundtypen
Grundlegende Typen: num, str, boolDer Typ 'any': Der AuswegDer Typ 'unknown'Nil- & optionale TypenTypinferenz in der PraxisExplizite TypannotationenZusammenfassung: Praxis zu Grundtypen5Typ-Aliase, Union-Typen und Schnittmengen-Typen
Typ-Aliase für PrimitivenUnion-TypenArbeiten mit Union-TypenLiterale TypenSchnittmengen-Typen (Intersection Types)Kombination von Typ-AliasenZusammenfassung: Fortgeschrittene Typ-Kombinationen3Typisierte Tabellen: Arrays & Maps
Typisierte ArraysHinzufügen und Lesen von ElementenWas ist ein Map-Typ?Deklarieren und Zugreifen auf MapsIterieren von TabellenGemischt-strukturierte TabellenMehrdimensionale typisierte Arraystable.unpack und VarargsZusammenfassung: Arrays und Maps6Typisieren von Tabellen-Shapes
Inline-Shape-AnnotationenTyp-Aliase für ShapesOptionale EigenschaftenShapes vs. lose TabellenShapes erweiternMethoden zu Shapes hinzufügenSelf und Methoden mit DoppelpunktZusammenfassung: Definieren von Tabellen-ShapesÜbe selbstständig: Online-Lua-Compiler