Aims
The course will
cover the following advanced Java topics, and certain topics that are
of more
general relevance : file operations, generators, make, being examples
Collections - ArrayList, Vector, etc, iterators, comparators, generics.
Inheritance and interfaces, algebraic
approach.
Static variables, inner classes.
Constructors.
Casting, conversions, testing for
class membership
and exceptions.
Random access file operations.
Serialisation, dynamic class loading.
User-defined exceptions.
Programming with visitors.
Threads.
Generators and make.
AWT Images
Image I/O
|
Intended learning
outcomes
Ability to design and
implement a
software system using good object-oriented practices.
Ability to use Java
SDK tools.
Ability to build a
system with complex
dependencies during the software construction stage.
Summative assessment
Assessment Type
|
Weighting
|
Coursework
|
0.2
|
Exam
|
0.8
|
Course texts and required reading
Java
Programming Advanced Topics, Wrigglesworth,
publisher Thompson
Big Java, Horstman,
Wiley
Lab Work
You will initially work on preparing a
class hierarchy a specification of which and partial implementation is
provided in this pdf file You are to
complete the implementation, and to submit your results for marking as
you go providing test methods which demonstrate to your satisfaction
that the class is operating as specified. You should submit the results
of running your test script.
As you go you should be building up a make file that will automatically
compile and test the classes you build. The make file should not allow
compilation of subseqent stages if a test has failed for the earlier
stages.
Stages
- Prepare a diagram of the class hierarchy described in
the document and show it to your lecturer to check that you understand
the basic structure. (1 week)
- Implement the Numeric class, test it, submit to
lecturer for marking along with test data showing that it works. ( 2
weeks )
- Implement the classes Bool and Text described in the
specification, test them and submit to the lecturer for marking. (1
week)
2nd lab project
Never let it be said that I am a total heel, just wanting to grind my
students faces in the mud. In response to near universal despair at the
first series of exercises I have modified the subsequent work.
The additional project is documented in this
pdf file.
|