Coding
Programming languages and how they work
Participants will learn the basic principles and concepts of programming languages. An overview of high-level and low-level programming languages will be given, with the differences between these types clearly highlighted. High-level languages such as Python and Java are compared to machine-oriented languages such as Assembly.
From Visual Programming to 0 and 1
This section covers the range of programming from visual programming languages to machine-oriented languages. Examples of visual programming languages, such as Scratch, and machine-oriented languages, such as Assembly, are presented. The different levels of programming and their applications are explained.
Fundamentals of programming
The basic concepts of programming are taught here. These include the syntax and semantics of programming languages, the declaration and use of variables and data types (such as integer, float, string, boolean), as well as the use of arithmetic, logical and comparison operators.
Design patterns
Design patterns are proven solution patterns for recurring problems in software development. Participants learn the definition and purpose of design patterns and are given examples of common patterns such as singleton, factory and observer. The application and advantages of design patterns in software development are also discussed.
Control structures
This section covers the basic control structures in programming, including conditions and branching with if, else and elif statements as well as loops such as for and while loops. The importance of loop control using break and continue is also explained.
Functions and modularity
Participants will learn how to define and call functions, including parameters, return values and code reusability. The basic principles of modularity and the division of code into manageable, reusable modules are also covered.
Basic data structures
This section provides a basic understanding of data structures such as lists, arrays, dictionaries, hashmaps, tuples and sets. Students will learn how to create, access and modify these structures.
Simple algorithms and problem solving
Participants are introduced to basic sorting algorithms such as bubble sort and selection sort. They will also learn about search algorithms such as linear and binary search. Systematic problem-solving strategies and debugging methods are discussed.
Object-oriented programming (OOP)
The basic principles of object-oriented programming are taught, including classes, objects, attributes and methods. Concepts such as inheritance, polymorphism and encapsulation are fundamentally explained and illustrated with simple examples.
Simple projects and practical applications
Participants put their knowledge into practice in small, practical projects, such as the development of a calculator, a to-do list or a simple game. Finally, simple techniques for checking and improving your own code through code reviews are covered.
