INF205 Resource-efficient programming
About this course
This course introduces students with programming experience in high-level programming languages (e.g., Python) to programming in a compiled programming language with explicit memory management, with a focus on efficient use of computational resources (CPU time and memory). Specific topics are:
- C++ as a modern programming language
- Compiling and building projects
- Pointers, memory allocation and deallocation
- Working with the C++ Standard Library
- Generic programming with templates
- Implementing containers from first principles
- Programming and sustainability
- Interfacing with ROS (e.g., for embedded systems)
Learning outcome
After completing the course you will be able to
- implement algorithms in modern C++
- manage memory safely
- use the C++ Standard Library and third-party libraries
- implement data types from first principles
- develop code suitable for embedded systems
- assess programs and their use in terms of sustainability metrics
- create interfaces allowing the code to interact with other software
Learning activities
Teaching support
Syllabus
Prerequisites
Assessment method
About use of AI
Examiner scheme
Mandatory activity
Teaching hours
Admission requirements