ÐÂÏã¸ÛÁùºÏ²Ê¿ª½±½á¹û

XClose

ÐÂÏã¸ÛÁùºÏ²Ê¿ª½±½á¹ûModule Catalogue

Home
Menu

Object-Oriented Programming (COMP0004)

Key information

Faculty
Faculty of Engineering Sciences
Teaching department
Computer Science
Credit value
15
Restrictions
Module delivery for UG (FHEQ Level 4) available on BSc Computer Science; MEng Computer Science; MEng Mathematical Computation.
Timetable

Alternative credit options

There are no alternative credit options available for this module.

Description

Aims:

This module provides a thorough introduction to object-oriented (OO) programming. The key object-oriented concepts such as class design, inheritance, dynamic binding and interfaces, are introduced along with design strategies for smaller sized object-oriented programs. Material is also included on data representation, the implementation of common data structures such as lists, trees and hash tables, basic cloud-based applications, and on development tools and practices. To learn how to apply object-oriented design concepts, and practice programming skills, the module has a substantial practical element, with weekly lab classes, sets of exercise questions, and an individual programming coursework.

Intended learning outcomes:

On successful completion of the module, a student will be able to:

  1. Design and implement smaller-scale object-oriented programs.
  2. Have a good knowledge of key object-oriented principles and design strategies.
  3. Read, write, and process data sets using object-oriented techniques.
  4. Understand how core data structures are implemented using classes.
  5. Develop basic object-orientedÌýapplications that run in a cloud environment.
  6. Use programming tools such as an integrated development environment (IDE), debugger, and version control.

Indicative content:

The following are indicative of the topics the module will typically cover:

Object-Oriented Principles:

  • Taking an object-oriented approach to software development.
  • Classes and the use of abstractions.
  • Key design principles and development practices.

Object-Oriented Programming:

  • Designing and implementing classes.
  • Identifying and implementing class relationships.
  • Using abstract classes, interfaces and inheritance.
  • Developing smaller-scale programs taking an object-oriented approach.
  • Effective object-oriented design and programming practices.
  • Documenting designs using class diagrams.
  • The design of basic cloud-based applications.

Data Representation:

  • Implementing common data structures.
  • Storing data in files.
  • Processing data to extract information.

Requisites:

To be eligible to select this module as optional or elective, a student must: (1) ​be registered on a programme and year of study for which it is a formally available; and (2) have taken Principles of Programming (COMP0002) in Term 1.

Module deliveries for 2024/25 academic year

Intended teaching term: Term 2 ÌýÌýÌý Undergraduate (FHEQ Level 4)

Teaching and assessment

Mode of study
In person
Methods of assessment
90% Exam
10% Coursework
Mark scheme
Numeric Marks

Other information

Number of students on module in previous year
142
Module leader
Dr Graham Roberts
Who to contact for more information
cs.undergraduate-students@ucl.ac.uk

Last updated

This module description was last updated on 8th April 2024.

Ìý