Skip to navigation | Skip to main content | Skip to footer

COMP10580: Object Oriented Programming with Java (non specialist) (2008-2009)

This is an archived syllabus from 2008-2009

Object Oriented Programming with Java (non specialist)
Level: 1
Credit rating: 20
Pre-requisites: No Pre-requisites
Co-requisites: No Co-requisites
Duration: 22 weeks throughout year
Lectures: 34 in total (alternately 2 then 1 per week)
Examples classes: 10 1 hour sessions
Labs: 10 (1 per fortnight)
Lecturers: Howard Barringer, Sean Bechhofer, John Latham
Course lecturers: Howard Barringer

Sean Bechhofer

John Latham

Additional staff: view all staff
Sem 1 w1-5,7-12 Examples LF17 Thu 09:00 - 10:00 -
Sem 1 w1-5,7-12 Lab Toot 1 Mon 09:00 - 11:00 -
Sem 1 w1-5,7-12 Lecture LF15 Wed 11:00 - 12:00 -
Sem 1 w1-5,7-12 Lecture LF15 Thu 12:00 - 13:00 -
Sem 1 w1 Lab Toot 1 Fri 14:00 - 16:00 -
Sem 2 w19-26,30-33 Lecture IT103 Tue 13:00 - 14:00 -
Sem 2 w19-26,30-33 Examples IT103 Tue 14:00 - 15:00 -
Sem 2 w19-26,30-33 Lab Toot 1 Mon 14:00 - 16:00 -
Sem 2 w19-26,30-33 Lecture IT103 Thu 15:00 - 16:00 -
Assessment Breakdown
Exam: 50%
Coursework: 0%
Lab: 50%


This course unit provides the first exposure to programming for many students. Its main aim, therefore, is to introduce the principles of design and programming, using objects as a basis.

This course unit will use Java and provide an `Objects-Soon' introduction to the Object-Oriented paradigm. The emphasis is on acquiring best practice incrementally from the bottom-up and the course unit starts from teaching imperative control constructs which must be used to program object behaviour. Approaches to testing programs for correctness and evaluating designs against typical non-functional characteristics will also be covered.

Learning Outcomes

Students completing this course unit should:

Have a clear understanding of the basic principles of the Java programming language. (A)
Be able to design and code small Java programs, which meet simple requirements expressed in English. (A,B,C)
Be able to test and debug simple Java programs. (B,C)
Be able to write informal justifications for the programs they design. They should also be used to using laboratory notebooks for recording explorations of design alternative. (B,C)
Have a clear understanding of the need for a development process.(A)

Assessment of Learning outcomes

Learning outcome (1) is assessed by examination. Learning outcome (2) is assessed by examination and in the laboratory. Learning outcomes (3), (4) and (5) are assessed in the online and offline laboratory sessions.

Contribution to Programme Learning Outcomes

A2, B1, B2, B3, C5, D4, D5


Introduction (2)
Essential basics: sequential execution and programming (2)
Types, variable and expressions (2)
Execution flow control (6)
Separate methods (2)
Separate classes (4)
Object oriented design (2)
Introduction to graphical user interfaces using SWING (4)
Arrays (4)
Files and Exceptions (4)
In Conclusion (2)

Reading List

The following three books are recommended as being supportive for this course unit, although no single one is recommended as an essential purchase. It is expected, however, that most students will purchase one of the books. In particular, it is suggested that groups of students coordinate their selection to ensure access to all three books.

Other supporting material is provided by:
COMP10081 lecture handouts
COMP10081 tutorial sheets

Title: Absolute Java (3rd edition)
Author: Savitch, Walter J.
ISBN: 0321505042
Publisher: Pearson Education
Edition: 3rd
Year: 2007

Title: Introduction to Java programming (6th edition)
Author: Liang, Y. Daniel
ISBN: 0132221586
Publisher: Pearson Education
Edition: 6th
Year: 2006

Title: Java in two semesters (2nd edition)
Author: Charatan, Q. and A. Kans
ISBN: 0077098048
Publisher: McGraw-Hill
Edition: 2nd
Year: 2002