
Cursus Lua programmeren
Leer Lua van de grond af aan en verwerf de programmeervaardigheden die wereldwijd game-engines, ingebedde systemen en automatiseringstools aandrijven. Deze cursus neemt je mee van je eerste script tot geavanceerde onderwerpen zoals coroutines, metatabellen en de C API. Elk concept wordt onderwezen met praktische, hands-on voorbeelden die je direct kunt toepassen.
Wat je gaat leren:
Deze cursus behandelt elk essentieel onderdeel van Lua-programmeren, te beginnen met het instellen van de omgeving, syntax en datatypen. Je beheerst de control flow, functies, closures en Lua's krachtige tabelsysteem. Het curriculum gaat vervolgens in op stringmanipulatie, patroonherkenning, metatabellen en objectgeoriënteerd ontwerp. Je leert ook code organiseren in modules, runtime-fouten afhandelen en afhankelijkheden beheren met LuaRocks. Geavanceerde onderwerpen omvatten coroutines, garbage collection, prestatieoptimalisatie en de Lua C API. Aanvullende secties behandelen game-ontwikkeling met LÖVE, systeemautomatisering, testen met busted en professionele teamwerkwijzen.
Hoe je praktisch studeert Cursus Lua programmeren
Hoe je oefent Cursus Lua programmeren
Voor bedrijven die hun team willen trainen
Bij Dedika voor bedrijven bevat de cursus oefeningen en voorbeelden die zijn afgestemd op jouw organisatie en precies zoals jouw bedrijf het nodig heeft.
Cursusinhoud
8 Hoofdstukken • 39 LessenDuur tussen 4 en 360 uren (jij beslist)
Hoofdstuk 1VerbergenVerberg detailsBekijk detailsLua-grondbeginselen en omgevingsconfiguratie
Lua-grondbeginselen en omgevingsconfiguratie
Les 1 • Variabelen en gegevenstypen
Legt dynamische typering, nil, booleans, getallen en strings uit. Studenten krijgen de vaardigheid om waarden op te slaan en te inspecteren in elk Lua-programma.
Les 2 • Lua-syntax en codestructuur
Introduceert statementsyntax, commentaar en witruimteregels. Biedt de grammaticale basis waar elk volgend script op voortbouwt.
Les 3 • Lua installeren en configureren
Behandelt de installatie van de Lua-runtime op de belangrijkste besturingssystemen en het instellen van de editor. Sluit aan bij het hoofdstuk door hands-on oefening vanaf de eerste les mogelijk te maken.
Les 4 • Basisinvoer en -uitvoer
Leert print, io.write en io.read voor console-interactie. Stelt studenten in staat direct zichtbare uitvoer te produceren en gebruikersinvoer te accepteren.
Les 5 • Operatoren en expressies
Behandelt rekenkundige, relationele, logische en concatenatie-operatoren. Bouwt expressie-schrijfvaardigheden die in alle volgende hoofdstukken worden gebruikt.
Hoofdstuk 2VerbergenVerberg detailsBekijk detailsControlestroom en programmalogica
Controlestroom en programmalogica
Les 1 • Break, Goto en Lusbesturing
Legt break uit om lussen te verlaten en goto voor gecontroleerde sprongen. Completeert de controlestroom-toolkit met veilige, doelbewuste gebruikspatronen.
Les 2 • Numerieke en generieke for-lussen
Leert numerieke for met stapbesturing en generieke for met iterators. Bereidt studenten voor op het doorlopen van tabellen dat in het volgende hoofdstuk wordt behandeld.
Les 3 • Conditionele statements
Behandelt if-, elseif- en else-syntax met geneste condities. Maakt direct vertakkingslogica mogelijk die door elk niet-triviaal programma wordt vereist.
Les 4 • While- en repeat-lussen
Introduceert while- en repeat-until-lussen voor conditiegestuurde iteratie. Studenten leren wanneer elk lustype het beste past bij een gegeven probleem.
Hoofdstuk 3VerbergenVerberg detailsBekijk detailsFuncties en scope
Functies en scope
Les 1 • Recursieve functies
Behandelt directe en wederzijdse recursie met basisgevalontwerp. Bouwt probleemdecompositievaardigheden die worden toegepast in algoritmen en datastructuren.
Les 2 • Meerdere retourwaarden en varargs
Legt het retourneren van meerdere waarden en het gebruik van de ... vararg-syntax uit. Ontgrendelt flexibele functiehandtekeningen die veel voorkomen in Lua-idiomen.
Les 3 • Lokale versus globale scope
Onderscheidt lokale en globale variabele levensduur en zichtbaarheidsregels. Voorkomt veelvoorkomende scoping-bugs die ontstaan in grotere scripts.
Les 4 • Functies definiëren en aanroepen
Behandelt functiedeclaratie-syntax, parameters en retourwaarden. Legt het primaire abstractiemechanisme vast dat in de hele cursus wordt gebruikt.
Les 5 • Closures en upvalues
Introduceert closures als functies die upvalues vastleggen uit omsluitende scopes. Maakt stateful functiefabrieken en callback-patronen mogelijk.
Hoofdstuk 4VerbergenVerberg detailsBekijk detailsTabellen: Lua's Kern Datastructuur
Tabellen: Lua's Kern Datastructuur
Les 1 • Tabelmanipulatie met de table-bibliotheek
Introduceert table.insert, table.remove, table.sort en table.concat. Voorziet studenten van standaardbibliotheektools voor veelvoorkomende tabelbewerkingen.
Les 2 • Tabellen als arrays
Legt integer-geïndexeerde reeksen en de # lengte-operator uit. Maakt lijststijl gegevensopslag en sequentiële verwerking mogelijk.
Les 3 • Tabellen maken en openen
Behandelt tabelconstructor-syntax en sleutelwaarde-toegangspatronen. Biedt de basis voor elke gegevensmodelleringstaak in Lua.
Les 4 • Tabellen als dictionaries
Behandelt string- en gemengde sleutels voor kaartstijl gegevensopslag. Sluit aan op real-world use cases zoals configuratie- en recordobjecten.
Les 5 • Tabellen als referenties
Legt referentiesemantiek, ondiepe kopieën en aliasing-effecten uit. Voorkomt gegevenscorruptie-bugs bij het doorgeven van tabellen aan functies.
Hoofdstuk 5VerbergenVerberg detailsBekijk detailsStrings en patroonherkenning
Strings en patroonherkenning
Les 1 • Patronen vervangen en itereren
Leert string.gsub voor vervanging en string.gmatch voor iteratie. Completeert de patroon-toolkit voor volledige teksttransformatie-workflows.
Les 2 • Stringopmaak met string.format
Leert formaatspecificaties voor getallen, strings en opvulling. Maakt nauwkeurige uitvoeropmaak mogelijk die vereist is in logboekregistratie en rapportage.
Les 3 • Essentiële string-bibliotheek
Behandelt string.len, string.sub, string.upper, string.lower en string.rep. Bouwt de baseline tekstverwerkingstoolkit voor alle stringtaken.
Les 4 • Patronen vinden en matchen
Behandelt string.find, string.match en vastleggroepen. Maakt extractie van gestructureerde gegevens uit onbewerkte tekstinvoer mogelijk.
Les 5 • Patroonsyntax en karakterklassen
Introduceert Lua-patronen, ankers, kwantoren en karakterklassen. Biedt de grammatica voor alle find-, match- en gsub-bewerkingen.
Hoofdstuk 6VerbergenVerberg detailsBekijk detailsMetatabellen en objectgeoriënteerd Lua
Metatabellen en objectgeoriënteerd Lua
Les 1 • Klassen bouwen met prototypes
Implementeert klasseconstructors en methodeverzending via __index-ketens. Studenten creëren herbruikbare objectblauwdrukken met gedeelde methoden.
Les 2 • Overerving en polymorfisme
Breidt prototypeketens uit voor enkelvoudige overerving en methodeoverschrijving. Completeert het OOP-model met subclass- en supercall-patronen.
Les 3 • Rekenkundige en vergelijkingsmetamethoden
Behandelt __add, __sub, __mul, __eq, __lt en __le metamethoden. Maakt het voor aangepaste typen mogelijk deel te nemen aan standaard Lua-expressies.
Les 4 • Index- en newindex-metamethoden
Leert __index voor eigenschapsopzoeking en __newindex voor schrijfonderschepping. Maakt standaardwaarden, alleen-lezen tabellen en proxy-objecten mogelijk.
Les 5 • Inleiding tot metatabellen
Legt setmetatable, getmetatable en het metatable-contract uit. Legt het mechanisme vast dat ten grondslag ligt aan alle geavanceerde tabelaanpassingen.
Hoofdstuk 7VerbergenVerberg detailsBekijk detailsModules, pakketten en foutafhandeling
Modules, pakketten en foutafhandeling
Les 1 • Debuggen met de debug-bibliotheek
Behandelt debug.traceback, debug.getinfo en hook-functies. Geeft studenten tools om problemen in complexe multi-moduleprogramma's te diagnosticeren.
Les 2 • require en het pakketsysteem
Legt require, package.path en modulecachegedrag uit. Leert studenten om afhankelijkheden betrouwbaar te laden en te beheren.
Les 3 • Aangepaste fouten en foutobjecten
Leert error() met niveaus en gestructureerde fouttabelobjecten. Maakt informatieve, machineleesbare foutrapportage in bibliotheken mogelijk.
Les 4 • Foutafhandeling met pcall en xpcall
Introduceert pcall en xpcall voor beveiligde aanroepen en foutvastlegging. Voorkomt dat onverwerkte fouten productiescripts laten crashen.
Les 5 • Modules maken en gebruiken
Behandelt het module-als-tabel patroon en het retourneren van openbare API's. Maakt codescheiding en hergebruik over meerdere scriptbestanden mogelijk.
Hoofdstuk 8VerbergenVerberg detailsBekijk detailsGeavanceerd Lua en prestatie-optimalisatie
Geavanceerd Lua en prestatie-optimalisatie
Les 1 • Iterators gebouwd met coroutines
Bouwt stateful iterators met coroutine.wrap voor schone syntax. Verbindt coroutine-kennis met praktisch generiek-for-gebruik.
Les 2 • Profilering en prestatietuning
Past timing, lokale caching en tabelpreallocatie toe om overhead te verminderen. Studenten meten en verbeteren scriptprestaties met concrete benchmarks.
Les 3 • Coroutines en coöperatieve multitasking
Introduceert coroutine.create, resume, yield en status. Maakt coöperatieve planning en producer-consumer-pipelines in Lua mogelijk.
Les 4 • Geheugenbeheer en garbage collection
Behandelt de incrementele GC, collectgarbage() en zwakke tabellen. Leert studenten om geheugengebruik te beheersen in langlopende applicaties.
Les 5 • De omgeving en _ENV
Legt _ENV uit als de globale tabel en omgevingscontrole op chunkniveau. Maakt sandboxing en dynamische globaalbeheertechnieken mogelijk.
Jouw geldig certificaat van voltooiing
Deze cursus is voor jou:
Beginprogrammeurs: enthousiast om een lichte, veelzijdige scripttaal te leren.
Game-ontwikkelaars: die logica willen scripten in engines zoals LÖVE of Defold.
Ontwikkelaars van C/C++: die een snelle scriptlaag in hun applicaties willen inbedden.
Automatiseringsingenieurs: die een compacte taal nodig hebben voor bouwtools en systeemscripts.
Informaticastudenten: op zoek naar een praktische taal naast Java of Python in de klas.
Carrièreswitchers: overstappen naar softwarefuncties via een gerichte, toegankelijke taal.
Wat onze studenten zeggen
Jullie lessen zijn perfect. Ik heb het jaarpakket aangeschaft en heb eindelijk de mogelijkheid om verschillende onderwerpen die mij interesseren te volgen zonder van platform te hoeven wisselen... bedankt voor alles wat jullie doen, ik heb jullie al aan anderen aanbevolen...

Ik vind het fijn hoe de lessen direct ter zake zijn en hoe ik tussen hoofdstukken kan wisselen en content kan overslaan die ik niet nodig heb.

Ik vind de content en de manier van presenteren en transcriptie van video's geweldig, wat het proces versnelt!

Het platform is snel en eenvoudig te gebruiken. De diversiteit aan content en de aanvullende video's helpen enorm bij het leren.

Belangrijkste opleidingen
FAQ
Wie is Dedika?
Is het certificaat geldig in Nederland?
Zijn de cursussen gratis?
Wat is de studielast van de cursus?
Hoe zien de cursussen eruit?
Hoe werken de cursussen?
Wat is de duur van de cursussen?
Wat zijn de kosten of prijzen van de cursussen?
Wat is een EAD- of online cursus en hoe werkt het?
PDF-cursus




















