
Delve into the essentials of Zig, highlighting memory and type safety, no hidden control flow, and compile-time metaprogramming, as you learn hello world, data types, and a currency conversion project.
Set up Zig by downloading, installing, and configuring it with environment variables. Write a hello world program using std.debug.print, build with Zig, and run in the terminal.
Discover variables, constants, and data types in zig, including bools, ints, floats, tuples, and arrays, with const vs var, compile-time inference, and console printing.
learn to manipulate stored data with arithmetic operators in zig, using constants and variables, perform addition, subtraction, multiplication, and division, and explore compound assignments and modulus rem and mod functions.
Learn to print data in Zig using standard output and standard error, create a stdout writer, and apply format specifiers for decimal, hex, binary, booleans, characters, and strings.
Apply Zig programming fundamentals to build a currency converter that converts USD to euros, pounds, and yen using rates 0.93, 0.82, and 134.25, printing two decimal places.
Master the fundamentals of Zig, from setup and hello world to variables, constants, data types, and memory storage, then apply arithmetic, format strings, and currency conversion (usd, eur, gbp, jpy).
Explore control statements in the Zig programming language, including relational and logical operators, if and else, and the while loop, ending with an even-odd detector project.
Explore how relational and logical operators drive decision making in Zig, returning booleans for true or false and enabling sequential, selection, and repetition control flows for the Zig programming course.
Explore how Zig uses relational and logical operators within selection control statements, demonstrating if and if-else, chaining to simulate multiple options and drive conditional output.
Master the while loop, a flexible repetition control that runs code while a condition holds, using counter and sentinel patterns and examples like first powers of two and three.
Build a parity detector with a while loop and if else to print whether numbers from 1 to a limit are even or odd, using rem or modulus.
Learn to apply relational and logical operators with boolean expressions to control flow in Zig, using if, if else, and while loops to perform repeated tasks and choose paths.
Explore arrays and slices as data structures, use for loops to iterate homogeneous elements in memory, and apply these concepts to manipulating temperature data in the complete Zig programming course.
Learn to declare, initialize, and modify arrays in Zig, access elements by index, and iterate with for loops; print arrays and characters using type-aware format and placeholders.
Explore slices in Zig, a window into an array created by slice expressions that avoids copying, reduces memory use, and enables viewing and modifying elements with a pointer and length.
Develop a Zig program to analyze a week's Fahrenheit temperature array, calculating the average, identifying the hottest and coldest days, and printing weekend temperatures using a slice.
Explore arrays and slices, access data by indices, and view slices as windows into a larger array; use for loops with these structures on temperature data.
Explore Zig's object oriented features, from functions and inline/variadic forms to structs with fields and methods, then discover namespaces, polymorphism, and interfaces—applied in a Happy Birthday project.
Explore declaring and calling functions in Zig with the fn keyword, including parameterless and parameterized forms returning void or i32. See examples of print messages and adding numbers.
Explore advanced function concepts in zig, including inline and variadic style functions, with examples of square, looped calls, and slice-based variadics, plus handling remainder with rem to print even numbers.
Explore how Zig uses structs to model data with fields and methods, offering explicit, object aware syntax beyond traditional object oriented patterns.
Implement a Zig birthday struct with a name as a u8 array and age as a u32, and a celebrate method that prints greetings and candle blowouts up to age.
Welcome to The Complete Zig Programming Course!
Zig is relatively new general-purpose programming language and toolchain.
Designed as a successor to C, Zig was created as a way for coders to build and maintain functional software that is robust, reusable, and easy to program.
This course is a fantastic introduction to the functionality of Zig, and covers everything you need to skill up for your next project!
Why Learn Zig?
One of the top programming languages British developers want to work with in 2024! (StackOverflow survey 2023).
A simpler and more modern syntax than C
Zig has a focus on performance and safety
A great language for systems programming and game development!
Why take this course?
The first and best course on Zig!
A practical and project-focused course that lets students put their new skills in to practice immediately
The FOUR projects you'll build yourself are:
1) A currency calculator
2) An odd/even detector program
3) A temperature calculator
4) A happy birthday candles program.
This 3.5hr course starts with the fundamentals of Zig before moving on to control statements, operators, arrays and slices, and finally functions and structs.
The Complete Zig Programming Course is taught by the brilliant Dr. John Baugh! John's taught almost 15,000 students how to code on Udemy and he's rated highly by them (4.6!) Previously a software engineer, John also has a Ph.D. in Computer and Information Science and is a Professor and Lecturer at multiple institutions in the US.
★★★★★ 'An amazing tutor, love his way of teaching. He is experienced, organized and knows exactly what he's doing.' Aly A. The Complete Java Developer Course
★★★★★ 'Dr Baugh [...] breaks things down into concise lectures focusing on one or two new coding structures. He is encouraging [...] and the projects he sets gives you a little bit of free range to do things your own way, with enough pointers to not overwhelm you with the task ahead.' Jonathan G. The Complete C++ Developer Course
★★★★★ 'I really like the instructor, especially his neat and tidy style of teaching. Moreover, he's funny and a nice person.' Emanuele V. The Complete C++ Developer Course