1. System fundamentals
2. Computer organization
3. Networks
4. Computational thinking, problem-solving and programming
4.1 General principles
4.2 Connecting computational thinking and program design
4.3 Introduction to programming
5. Abstract data structures (HL)
6. Resource management (HL)
7. Control (HL)
A. Databases
B. Modelling and simulation
C. Web science
Object-oriented programming (OOP)
4.3.1 Fundamental Operations of a Computer
4.3.2 Features of a Computer Language
4.3.3 Need for Higher-Level Languages
4.3.4 Variables, Constants, and Operators
4.3.5 Algorithms with Loops and Branching
4.3.6 Characteristics of a Collection