| STUDENTS
> Object-Oriented Programming
|
Object-Oriented Programming
Note:
Whilst every effort is made to keep the syllabus and assessment records correct
for this course, the precise details must be checked with the lecturer(s).
Code: | 1008 |
Year: | 1 |
Prerequisites: | |
Term: | 2 |
Taught By: | Graham Roberts (100%)
|
Aims: | This course introduces object-oriented programming
with Java, including issues such as class design, inheritance, dynamic binding
and interfaces. Sections are also included on the implementation of core data
structures such as arraylists, lists, trees and hash tables. This is an
intensely practical course and student engagement outside lectures is seen as critical.
|
Learning Outcomes: |
To be able to:
(a) design and implement a small-scale object-oriented program with 5-10 classes;
(b) use a large sub-set of the Java programming language effectively;
(c) gain an understanding of how to design and use classes correctly;
(d) understand class relationships;
(e) implement common data structures.
|
Content:
Classes and objects | Introduction to object-oriented concepts of classes and
objects. Simple UML class diagrams. Inheritance and dynamic binding. Comparison of Java to other languages. |
Object-Oriented Programming in the small. | Developing small programs using classes. Identifying and implementing class relationships. Using abstract classes, interfaces and inheritance when designing programs. Good design and programming practice. File handling. |
Exception handling | Dealing effectively with runtime errors using the Java
exception handling mechanism. Try, catch, throw, finally. How exceptions affect the design of an application. |
Robust Debugging and Testing | Debugging and finding errors. Introduction to unit testing. |
Data structures | Implementing common data structures, such as trees, lists and hash tables. |
Method of Instruction:
Lecture presentations, problem classes, programming lab classes, exercise questions.
Assessment:
The course has the following assessment components:
- Written Examination ( 2.5 hours, 90%)
- Coursework Section (2 pieces, 10%)
To pass this course, students must:
- Obtain an overall pass mark of 40% for all sections combined
The examination rubric is: Answer ALL of SECTION A and TWO Questions from SECTION B (THREE questions in total). SECTION B comprises 3 questions, all of which carry equal marks.Resources:
(Essential reading) Developing Java Software, 3rd Edition,
by Russel Winder and Graham Roberts,
published by John Wiley and Sons, 2006
ISBN: 0-470-09025-1-0
Lecture notes can be found on Moodle
|