Subject details

On successful completion of the subject you should be able to:

  1. design, implement, test and document solutions to problems using the sequence, selection and iteration constructs of structured programming
  2. explain the object-oriented programming paradigm
  3. use the object-oriented programming approach to design, implement, test and document solutions to problems
  4. demonstrate an understanding of the mechanics of parameter passing in the context of object-oriented programming
  5. explain how class mechanism supports encapsulation and information hiding
  6. design and implement appropriate classes for modelling a given problem
  7. explain the need for range checking and error handling and be able to write robust programs that implement these features
  8. design, implement and test the implementation of the hierarchical relationship among objects using a simple class hierarchy and inheritance
  9. explain event-driven programming and be able to describe the behaviour of simple GUI programs
  10. write object-oriented programs that use each of the following: arrays, strings, files, lists, stacks and queues
  11. explain algorithm complexity and the need for selecting appropriate algorithms and structures for a given problem
  12. implement searching and sorting algorithms in a programming language
  13. explain the concept of recursion and be able to write recursive solutions for simple to intermediate problems.
    • Introduction and Program Design
    • Defining Classes and Methods
    • Basics of OOP
    • Programming with Methods
    • Programming with Classes
    • Arrays
    • Inheritance, and introduction to Event-driven programming
    • Exception Handling
    • Streams and File I/O
    • More on Algorithms, Introduction to Recursion
  • Study resources

    • Instructional methods

      • Online assignment submission
      • Podcasting/Lecture capture
    • Online materials

      • Resources and Links
      • Printable format materials

In order to enrol in this subject, you must be accepted into one of the following degrees:

  • MUR-BIT-DEG-2019

Special requirements

No special requirements

This subject is designed to develop the skills of problem solving and program design using an Object Oriented programming language. Major topics include: algorithm design; procedural abstractions; the use of libraries as collection of black-box code modules; the concepts of pre- and post- conditions; strings, arrays, introduction to object-oriented concepts including data abstraction, encapsulation, classes and object references, inheritance; introduction to recursion; streams and file input and output; the definition and use of common classes - lists, stack and queues.

  • Assignment 1 (20%)
  • Assignment 2 (20%)
  • Invigilated Exam (50%)
  • Laboratory Assignment (10%)

Textbooks are subject to change within the academic year. Students are advised to purchase their books no earlier than one to two months before the start of a subject.

View textbooks

Related degrees