Kontakt aufnehmen

Schulungsübersicht

Einführung in Lua

  • Ein kurzer Rückblick auf die Geschichte
  • Ziele, Merkmale und explizit ausgeklammerte Aspekte von Lua
  • Ressourcen zur Lua-Dokumentation und zu Tutorials
  • Installation des Lua-Interpreters
  • Einrichten und Nutzen von LuaRocks

Grundlegende Syntax und Semantik

  • Bezeichner (Identifiers)
  • Kommentare, Blockkommentare
  • Globale Variablen und Erzwingung von Strenge (strictness)
  • Lokale Variablen
  • Eigenständige Programme, Programargumente
  • Kompilationseinheiten, Chunks, Ausdrücke, Semikolons

Datentypen und Datenstrukturen

  • Basistypen: nil, boolean, number, string
  • Objekttypen: function, userdata, thread, table
  • Referenzen/Objekte im Vergleich zu Basiswerten
  • Die Bedeutung von Tabellen (tables) in Lua

Einführung in Tabellen und ihre Vielseitigkeit

  • Tabellen als assoziative Arrays
  • Tabellen als numerische Arrays, Sequenzen

Grundlegende Kontrollstrukturen

  • if then elseif else end
  • while-Schleife
  • repeat-Schleife
  • einfache for-Schleife

Fehlerbehandlung

  • Rückgabewerte im Vergleich zu Ausnahmen
  • Umrechnung eines Rückgabewerts in eine Ausnahme
  • Umrechnung einer Ausnahme in einen Rückgabewert
  • Fehlerstufen (error levels)

Beispielprogramme

  • Auswertung von Polynomen
  • Breadth-First Search (Breitensuche)
  • Zusätzliche Übungen

Vertieftes zu Funktionen

  • Genannte Argumente (named arguments)
  • Objektorientierte Aufrufe
  • Closures
  • Currying
  • Tail Calls
  • Mehrfachzuweisung und Mehrfachrückgabe
  • Varargs (Variable Arguments)

Iteratoren und Co-Routinen

  • Die generische for-Schleife
  • Statuslose versus zustandsbehaftete Iteratoren
  • Unterschiede zwischen Iteratoren und Co-Routinen

Metatables und Metamethoden

  • Das Beispiel „set“ (Menge)
  • Die __tostring-Methamode
  • Ariphmetische Metamethoden
  • Die __index- und __newindex-Metamethoden
  • Die __len-Metamethode

Module und Pakete

  • Module verwenden
  • Module erstellen
  • Module in Pakete organisieren

Objektorientierte Programmierung

  • Die Bausteine der OOP in Lua
  • Beispiele

Diskussion zu erweiterten Sprachfeatures

  • Schwache Tabellen (weak tables)
  • Finalizer
  • Kompilierung, eval, Laden

Voraussetzungen

Kenntnisse in mindestens einer weiteren Programmiersprache. Programmierfahrung. Optional: Wenn Sie mit anderen Skriptsprachen vertraut sind, wird Ihnen das Verständnis von Lua erleichtert.

 14 Stunden

Teilnehmerzahl


Preis je Teilnehmer (exkl. USt)

Kommende Kurse

Verwandte Kategorien