Kies uw taal
Cursus Lua programmeren
Meer dan 2 miljoen studenten wereldwijd

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.

Dedika voor bedrijven

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.

Klik hier

Cursusinhoud

8 Hoofdstukken • 39 LessenDuur tussen 4 en 360 uren (jij beslist)

Hoofdstuk 1Bekijk details

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 2Bekijk details

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 3Bekijk details

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 4Bekijk details

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 5Bekijk details

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 6Bekijk details

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 7Bekijk details

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 8Bekijk details

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.

Certificering

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...
Giulio Carlo
Giulio CarloStudent Digitale Marketing
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.
Mariana Ferres
Mariana FerresStudent Fotografie
Ik vind de content en de manier van presenteren en transcriptie van video's geweldig, wat het proces versnelt!
Luciana Alvarenga
Luciana AlvarengaStudent Nageldesign
Het platform is snel en eenvoudig te gebruiken. De diversiteit aan content en de aanvullende video's helpen enorm bij het leren.
André Felipe
André FelipeStudent Prompt Engineering

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