OverviewThis module builds on the foundation of object-oriented design and implementation to provide a deeper understanding of and facility with object-oriented program design and implementation. More advanced features of object-orientation, such as inheritance, abstract classes, nested classes, graphical-user interfaces (GUIs), exceptions, input-output are covered. These allow an application level view of design and implementation to be explored. Throughout the course, the quality of application design and the need for a professional approach to software development is emphasised. In addition, students will learn about the uses of XML in structuring, transforming and representing data.
This module appears in:
Total contact hours: 32
Private study hours: 118
Total study hours: 150
Method of assessment
Main assessment methods
Coursework – 100% to include:
First Java – 10%
In Class test – 40%
Essay – 25%
Second Java – 25%
E.T.Ray Learning XML 2nd edition, O-Reilly, 2003
David J. Barnes and Michael Kölling, Objects First with Java: A Practical Introduction Using BlueJ Pearson Education, 2006
Use advanced features of an object-oriented programming language, such as inheritance and graphical libraries, to write programs.
Use object-oriented analysis, design and implementation with a minimum of guidance, to recognise and solve practical programming problems involving inheritance hierarchies.
Design appropriate interfaces between modular components.
Evaluate the quality of competing solutions to programming problems.
Evaluate possible trade-offs between alternative solutions, for instance those involving time and space differences.
know about the components and structures of typical information systems
be familiar with the basic principles of data and information, and their presentation, representation and structuring using XML
appreciate the wide range of applications of XML, within and without the information systems domain;
be familiar with some of the notations used in representing the conceptual design of information systems;
be able to use standard notations drawn from UML to describe the functionality and components of straightforward information systems;
be able to specify simple documents using XML.