Close Menu


Course Title: 
Object-oriented Programming
Educational Level: 
Semester offered: 
I & II
Associated Programme: 
B.Sc. CS; B.Sc. IT
Core Course: 
Course Aims: 

This course covers the methodology of programming from an object-oriented perspective, and introduces OOP principles using a language that supports the OOP paradigm. It also introduces object-oriented testing and debugging techniques, as well as the basics of graphical user interface programming and event-driven programming. The course continues the introduction to programming started in COMP1126 and continued in COMP1127.

  • Object-Oriented Programming
    • Objects and classes. Methods, message passing. Instance and class variables.
    • Encapsulation and information-hiding.
    • Imperative control structures, assignment/state, parameter passing models. Primitive types.
    • Inheritance, polymorphism, class hierarchies. Object composition. Abstract and concrete classes, interfaces. Templates.
    • Using APIs, class libraries. Modules/packages.
    • Array and string processing. I/O processing.
    • Concept of object references and aliases.
    • Collection classes and Iterators.
    • OO Testing. Debugging tools.
  • Graphics and GUI Programming, Web Concepts and Objects
    • Introduction to GUI programming. Event-driven programming. Exception handling.
    • Use of simple graphical libraries, and simple animation programming.
    • Simple HTML-embedded objects such as applets.
Course Assessment: 
  • 2-hour written final     50%
  • Coursework     50%
    • 3 projects   30% (10% each)
    • 3 labs     5%
    • 2 in-course tests (1 hr each) 15% (5% & 10%)

Students will be required to pass both the coursework and the final examination to pass the course.

Course Prerequisites: 

COMP1126; COMP1127

Top of Page