Course Details

Field of Study Engineering
Professor Michael Richard Collins (michael.collins@tudublin.ie)
Type Academic course
Delivery Type Online Track (100% online course): Pre-recorded
Credits 3
Contact hours 45
Schedule N/A Recorded
Course code ITE1010
Course number 18018

This course introduces the basic concepts and fundamentals of C++ Programming and the techniques used in Object-Oriented Programming. Students will learn how to develop well-designed, efficient and maintainable software using the C++ programming language. The course will be delivered using a combination of lectures and practical “hands-on” lab exercises with numerous programming examples.



The aim of this course is to enable the student to learn and develop programming skills in C++ Programming.


Lecture classes will teach the rules and syntax of C++. Each lecture will include many example programs to support the topics being taught.


Due to the practical nature of programming, a large emphasis will be placed on allowing the student to practice writing C++ programs and solve programming problems. The student will be given programming exercises to practice what they learn.

Learning Outcomes

On completion of this course, the student will be able to:

  1. Design, implement and execute a program using the C++ programming language.
  2. Test and debug a program to correct errors.
  3. Document a C++ program.
  4. Demonstrate an understanding of the principles and concepts of Object-Oriented Programming.
  1. Students must have their own laptop computer.
  2. Basic knowledge of Windows/MacOS/Unix-based Operating System required.

Materials:All electronic course material will be provided to the student.

Lesson Plan
Class 1: • Overview, getting started with C++ • Simple C++ input/output program, Data types and variables
Class 2: • Control-statements, Loops
Class 3: • Arrays: defining and using arrays, single & multi-dimensional • Assessment 1
Class 4: • C++ Strings • Functions
Class 5: • Introducing Objects and Classes
Class 6: • Constructors and Destructors, Method overloading
Class 7: • Class Attributes: Class data and method members • Assessment 2
Class 8: • Inline class member functions • Documentation of a Class, Separation of Class interface and Class implementation
Class 9: • Object-Oriented Programming Inheritance: Base and Sub-classes
Class 10: • Different types of Inheritance, Multiple Inheritance
Class 11: • Virtual Base Classes • Assessment 3
Class 12: • Object-Oriented Programming Polymorphism
Class 13: • Virtual functions, Abstract Base Classes
Class 14: • Testing, Improving program efficiency techniques
Class 15: • C++ summary, Quiz
Last Updated April 16, 2021
Go to Top