
Cursus Programmeertaal Zig
Beheers Zig vanaf de basis en schrijf snelle, veilige, low-level software met volledige controle over geheugen en gedrag. Deze cursus behandelt alles van de basisprincipes van de taal tot systeemprogrammering, C-interoperabiliteit en geavanceerde comptime-metaprogrammering. Als je serieus bent over systeemontwikkeling, geeft Zig je de kracht van C met moderne veiligheidsgaranties.
Wat je gaat leren:
Je bouwt een complete basis op in Zig's typesysteem, geheugenmodel en foutafhandelingspatronen. De cursus behandelt pointers, allocators, slices en eigendomsconventies, zodat je geheugen met precisie beheert. Je gebruikt comptime om generieke datastructuren en nuloverheadabstracties te schrijven. Standaardbibliotheekmodules voor I/O, collecties, threading en testen worden diepgaand behandeld. Je crosscompileert ook Zig-programma's, koppelt met C-codebases en richt je op ingebedde systemen. Na afloop schrijf je met vertrouwen productiekwaliteit Zig-code.
Hoe je praktisch studeert Cursus Programmeertaal Zig
Hoe je oefent Cursus Programmeertaal Zig
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 • 37 LessenDuur tussen 4 en 360 uren (jij beslist)
Hoofdstuk 1VerbergenVerberg detailsBekijk detailsAan de slag met Zig
Aan de slag met Zig
Les 1 • De basis van het Zig-bouwsysteem
Introduceert het zig build-commando, build.zig-bestanden en compilatiedoelen. Koppelt toolchain-kennis aan praktische projectcreatie.
Les 2 • Zig installeren en configureren
Begeleidt de installatie van de Zig-toolchain op de belangrijkste besturingssystemen en configureert editor-ondersteuning. Zorgt voor een reproduceerbare bouwomgeving vanaf dag één.
Les 3 • Zig's ontwerpfilosofie en -doelen
Behandelt Zig's kernprincipes: geen verborgen control flow, geen verborgen toewijzingen en een comptime-eerste ontwerp. Zet de context voor elke beslissing die in de cursus wordt genomen.
Les 4 • Je eerste Zig-programma schrijven
Doorloopt een minimaal Hello World-programma en legt elk token en elke import uit. Bouwt leesvaardigheid op voordat taalmechanismen worden geïntroduceerd.
Hoofdstuk 2VerbergenVerberg detailsBekijk detailsZig-types, variabelen en control flow
Zig-types, variabelen en control flow
Les 1 • Operatoren en expressies
Onderzoekt rekenkundige, bitsgewijze, vergelijkings- en logische operatoren met hun overloopgedrag. Koppelt operatorsemantiek aan Zig's garantie voor geen ongedefinieerd gedrag.
Les 2 • Primitieve types en type-inferentie
Behandelt gehele getallen, floats, booleans en de comptime_int/comptime_float-types. Legt uit hoe Zig types afleidt en wanneer expliciete annotatie vereist is.
Les 3 • Optionals en Error Unions
Introduceert ?T-optionale types en !T-error union-types als eersteklas control flow-tools. Bereidt studenten voor op Zig's foutafhandelingsmodel dat in het volgende hoofdstuk wordt geïntroduceerd.
Les 4 • Variabelen, constanten en veranderlijkheid
Onderscheidt var van const en legt Zig's standaard-onveranderlijkheidsbenadering uit. Versterkt expliciete controle over datamutatie.
Les 5 • Control Flow-constructies
Leert if-, while-, for- en switch-instructies, inclusief hun expressievormen. Laat zien hoe control flow integreert met Zig's typesysteem.
Hoofdstuk 3VerbergenVerberg detailsBekijk detailsFuncties, structs en enums
Functies, structs en enums
Les 1 • Structs en methoden
Definieert struct-types, veldtoegang en methodsyntax met behulp van de self-parameterconventie. Laat zien hoe structs dienen als Zig's primaire encapsulatiemechanisme.
Les 2 • Functies definiëren en aanroepen
Behandelt functiesyntax, parameterdoorgeven, retourtypes en inline-functies. Legt de basis voor alle abstractie in volgende hoofdstukken.
Les 3 • Enums en getagde unions
Leert enumdeclaratie, methoden op enums en getagde unions voor somtypes. Koppelt aan exhaustieve switch-matching uit het vorige hoofdstuk.
Les 4 • Comptime in functies en types
Introduceert comptime-parameters en comptime-blokken binnen functies en typedefinities. Legt de basis voor generiek programmeren in hoofdstuk 5.
Hoofdstuk 4VerbergenVerberg detailsBekijk detailsGeheugenbeheer en pointers
Geheugenbeheer en pointers
Les 1 • Slices en arrays
Onderscheidt arrays met vaste grootte van runtime-slices en legt fat-pointer-semantiek uit. Koppelt aan veilige iteratiepatronen uit hoofdstuk 2.
Les 2 • Geheugenveiligheids patronen
Behandelt defer voor opschoning, eigendomsconventies en het vermijden van use-after-free. Versterkt Zig's filosofie van expliciet, controleerbaar geheugenbeheer.
Les 3 • Pointers en pointertypes
Behandelt single-item pointers, many-item pointers en const-pointers met hun syntax. Bouwt precieze mentale modellen op voordat heap-toewijzing wordt geïntroduceerd.
Les 4 • De allocatorinterface
Legt de std.mem.Allocator-interface uit en waarom Zig allocators expliciet doorgeeft. Stelt het patroon vast dat door alle datastructuren in de standaardbibliotheek wordt gebruikt.
Les 5 • Standaard allocators in de praktijk
Demonstreert GeneralPurposeAllocator, ArenaAllocator, FixedBufferAllocator en page-allocator. Studenten kiezen de juiste allocator voor elke use case.
Hoofdstuk 5VerbergenVerberg detailsBekijk detailsGenerics en comptime-programmeren
Generics en comptime-programmeren
Les 1 • Diepgaande comptime-evaluatie
Onderzoekt hoe Zig comptime-blokken, comptime-variabelen en comptime-lussen evalueert. Bouwt intuïtie op voor wat er tijdens compilatie versus runtime gebeurt.
Les 2 • Typereflectie met @typeInfo
Gebruikt @typeInfo, @TypeOf en @typeName om types tijdens compilatie te inspecteren. Maakt het mogelijk code te schrijven die zich aanpast aan willekeurige struct- of enum-lay-outs.
Les 3 • Generieke functies en types
Laat zien hoe functies en structs geschreven worden die geparametriseerd zijn door comptime-typeargumenten. Koppelt aan struct- en functiekennis uit hoofdstuk 3.
Les 4 • Comptime-string en codegeneratie
Gebruikt comptime om structvelden, dispatch-tabellen en stringgebaseerde API's te genereren. Toont metaprogrammeerpatronen die gebruikelijk zijn in serialisatie- en RPC-bibliotheken.
Les 5 • Generieke datastructuren bouwen
Implementeert een generieke stack, wachtrij en gelinkte lijst met behulp van comptime-typeparameters. Past alle comptime-concepten toe in een praktische, testbare context.
Hoofdstuk 6VerbergenVerberg detailsBekijk detailsFoutafhandeling en robuuste code
Foutafhandeling en robuuste code
Les 1 • try, catch en errdefer
Toont try voor propagatie, catch voor lokale afhandeling en errdefer voor opschoning bij fouten. Koppelt foutafhandeling aan de geheugenveiligheids patronen uit hoofdstuk 4.
Les 2 • Panics, asserties en unreachable
Legt @panic, std.debug.assert en unreachable uit voor het afdwingen van invarianten. Onderscheidt herstelbare fouten van programmeerbugs.
Les 3 • Error sets en error unions
Definieert benoemde errorsets, afgeleide errorsets en error union-retourtypes. Stelt de woordenschat vast voor alle foutafhandelingspatronen in dit hoofdstuk.
Les 4 • Foutbestendige API's ontwerpen
Behandelt strategieën voor het blootleggen van minimale errorsets, het documenteren van foutmodi en het vermijden van errorset-vervuiling. Leert API-ontwerpdiscipline naast taalmechanismen.
Hoofdstuk 7VerbergenVerberg detailsBekijk detailsDe Zig-standaardbibliotheek
De Zig-standaardbibliotheek
Les 1 • Testen met std.testing
Gebruikt std.testing.expect, expectEqual en expectError om unit tests te schrijven. Stelt een testgestuurde workflow vast voor al het verdere projectwerk.
Les 2 • Gelijktijdigheid met threads en atomics
Introduceert std.Thread, mutexen en atomaire operaties voor gelijktijdigheid met gedeelde toestand. Bereidt studenten voor op systeemprogrammeertaken die parallellisme vereisen.
Les 3 • Strings en Unicode-verwerking
Legt Zig's byte-slice-stringmodel, UTF-8-iteratie en std.fmt-opmaak uit. Gaat in op veelvoorkomende valkuilen bij het werken met tekstgegevens.
Les 4 • I/O en bestandssysteembewerkingen
Behandelt std.io-readers en -writers, het openen, lezen en schrijven van bestanden. Koppelt allocatorpatronen uit hoofdstuk 4 aan gebufferde I/O-stromen.
Les 5 • Collecties: ArrayList, HashMap en meer
Demonstreert std.ArrayList, std.StringHashMap en std.AutoHashMap met allocator-injectie. Past generieke containerkennis uit hoofdstuk 5 toe.
Hoofdstuk 8VerbergenVerberg detailsBekijk detailsSysteemprogrammeren en C-interoperabiliteit
Systeemprogrammeren en C-interoperabiliteit
Les 1 • Embedded en freestanding doelen
Configureert Zig voor freestanding doelen, schakelt de standaardbibliotheek uit en schrijft opstartcode. Toont Zig's geschiktheid voor bare-metal en embedded ontwikkeling aan.
Les 2 • C aanroepen vanuit Zig
Behandelt @cImport, het vertalen van C-headers en het linken tegen C-bibliotheken. Maakt hergebruik van het enorme C-ecosysteem vanuit Zig-projecten mogelijk.
Les 3 • Zig blootstellen aan C
Leert export, extern en C ABI-compatibiliteit voor het bouwen van Zig-bibliotheken die door C worden verbruikt. Maakt het bidirectionele interoperabiliteitsbeeld compleet.
Les 4 • Cross-compilatie en implementatie
Gebruikt Zig's ingebouwde cross-compiler om vanuit één enkele host meerdere architecturen te targeten. Produceert geoptimaliseerde, statisch gelinkte binaries klaar voor implementatie.
Les 5 • Laag-niveau OS-interfaces
Gebruikt std.os en std.posix om systeemaanroepen te doen, signalen af te handelen en processen te beheren. Grondt Zig's systeemcapaciteiten in praktisch OS-programmeren.
Jouw geldig certificaat van voltooiing
Deze cursus is voor jou:
C-ontwikkelaars: op zoek naar een veiliger, expressiever alternatief zonder in te leveren op ruwe prestaties.
Rust-leerders: die een eenvoudiger mentaal model voor low-level systeemwerk willen.
Embedded engineers: die nauwkeurige hardwarebesturing en minimale runtime-overhead nodig hebben.
Backendontwikkelaars: klaar om dichter bij de hardware te komen voor prestatiekritische services.
Computer science-studenten: die fundamentele systeemkennis opbouwen die verder gaat dan de lesstof.
Opensourcebijdragers: die willen deelnemen aan infrastructuur- en toolingprojecten die in Zig zijn geschreven.
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




















