CU5057 - Advanced C++ (2025/26)
Module specification | Module approved to run in 2025/26 | ||||||||||||
Module title | Advanced C++ | ||||||||||||
Module level | Intermediate (05) | ||||||||||||
Credit rating for module | 15 | ||||||||||||
School | School of Computing and Digital Media | ||||||||||||
Total study hours | 150 | ||||||||||||
|
|||||||||||||
Assessment components |
|
||||||||||||
Running in 2025/26(Please note that module timeslots are subject to change) |
|
Module summary
The module provides further development of programming skills at application and system level across a range of platforms. Some of the problems of system independence will be addressed along with inclusion of library applications in different environments.
Students cover the intermediate part of C++ and consider how to optimise code for different platforms.
Students will be introduced to more advanced features of C++ such as operator overloading, templates, the STL, file handling and game/system design principles.
AIMS
• to make students aware of the features in a programming language which makes it suitable for use in systems programming;
• to enable students to compare programming languages thus reinforcing transferable programming skills;
• to enable students to apply problem solving techniques in a specialised application area.
• develop practical skills by practical coursework implementation;
• build awareness of coding practice for different platforms with respect to optimisation.
Prior learning requirements
CU4012a and b or equivalent (C++)
Syllabus
- Revision - control structures; simple and aggregate data types; pointers; classes; functions; the preprocessor; libraries.
- Access to system services; program development; conventions for writing Windows tools; initiating, controlling and monitoring processes.
- Three main aspects of simulation: modelling, execution, execution analysis & visualisation;
- C++ memory management, file handling, the STL
Balance of independent study and scheduled teaching activity
Students will develop theoretical understanding and practical skills based on weekly lectures, tutorials and supervised workshops. The workshops, in particular, are provided to enable group discussions and give opportunities for teamwork experience and practical support.
Appropriate blended learning approaches and technologies, such as the University’s VLE and online tools, will be used to facilitate and support student learning to:
• deliver content;
• encourage active learning;
• provide formative and summative assessments, and prompt feedback;
• enhance student engagement and learning experience.
Learning outcomes
On successful completion of this module students will be able to:
1 – Design and create interactive programs for specific briefs, using class libraries and the Windows IDE.
2 – Demonstrate good knowledge of the system utilities and be able to incorporate them in problem solving.
3 – Understand and apply the features of objected-oriented programming in a specialised application area.
4 – Be aware of constraints imposed by different platforms and understand how to deal with memory management.