Programming in C++ (H7126)
15 credits, Level 6
Spring teaching
This module will further enhance students software capabilities by introducing object orientated theory and programming practice using C++ in an Engineering context. Topics will be theoretically introduced and studied in lectures and then put into practice in a computer laboratory project.
The topics included are:
- Advance programming concepts such as inheritance, polymorphism, abstraction, encapsulation, and overloading
- Memory, pointers and memory safety
- Compilers and linker toolchain concepts, debuggers
- STL Templates
- Exceptions
- Best programming practices
- Software design, development cycles, testing and quality
Real world engineering problems will be solved using useful constructs such as:
- Stacks and queues
- Recursion and iteration
- Sorting
Teaching
59%: Lecture
41%: Practical (Laboratory)
Assessment
100%: Coursework (Software exercise)
Contact hours and workload
This module is approximately 150 hours of work. This breaks down into about 32 hours of contact time and about 118 hours of independent study. The University may make minor variations to the contact hours for operational reasons, including timetabling requirements.
We regularly review our modules to incorporate student feedback, staff expertise, as well as the latest research and teaching methodology. We’re planning to run these modules in the academic year 2021/22. However, there may be changes to these modules in response to COVID-19, staff availability, student demand or updates to our curriculum. We’ll make sure to let our applicants know of material changes to modules at the earliest opportunity.
Courses
This module is offered on the following courses:
- Electrical and Electronic Engineering (with an industrial placement year) BEng
- Electrical and Electronic Engineering (with an industrial placement year) MEng
- Electrical and Electronic Engineering BEng
- Electrical and Electronic Engineering MEng
- Robotic and Mechatronic Engineering (with an industrial placement year) BEng
- Robotic and Mechatronic Engineering (with an industrial placement year) MEng
- Robotic and Mechatronic Engineering BEng
- Robotic and Mechatronic Engineering MEng