COMP2005J Object-oriented programming

Academic Year 2024/2025

The Object Oriented Programming (OOP) paradigm is a key aspect of modern computer programming, having become the dominant programming paradigm in large-scale industrial software development. This module introduces students to object-oriented concepts such as classes, objects, message passing, encapsulation, abstraction, inheritance, polymorphism, genericity and software reuse. We will look at how these constructs are used to construct high-quality programs.There is a strong emphasis on practical program development.

Show/hide contentOpenClose All

Curricular information is subject to change

Learning Outcomes:

On successful completion of this module students should be able to describe the key aspects of object-oriented programming and their inter-relationships; design, implement and debug object-oriented programs of moderate complexity; assess the quality of a simple object-oriented design.

Student Effort Hours: 
Student Effort Type Hours




Autonomous Student Learning




Approaches to Teaching and Learning:
active/task-based learning; peer and group work; lectures; lab work; enquiry & problem-based learning 
Requirements, Exclusions and Recommendations

Not applicable to this module.

Module Requisites and Incompatibles
Not applicable to this module.
Assessment Strategy  
Description Timing Component Scale Must Pass Component % of Final Grade In Module Component Repeat Offered
Exam (In-person): 2-Hour end of term exam End of trimester
2 hr(s)
Graded No


Assignment(Including Essay): Project Week 12 Graded No



Carry forward of passed components
Remediation Type Remediation Timing
In-Module Resit Prior to relevant Programme Exam Board
Please see Student Jargon Buster for more information about remediation types and timing. 
Feedback Strategy/Strategies

• Group/class feedback, post-assessment
• Online automated feedback

How will my Feedback be Delivered?

Not yet recorded.

Name Role
Dr Seán Russell Lecturer / Co-Lecturer