The aim of this module is to teach the students object-oriented programming techniques using Java.
Aims and Objectives
Learning Outcomes
Syllabus
Introduction to Object Orientation
• Classes and objects
• Methods
• Constructors
• Inheritance (superclasses and subclasses)
• Polymorphism
• Abstract classes and interfaces
The Java library
• Collections and Iterators
GUI programming
• Writing Java user interfaces using an appropriate framework
• User interface components
• Event andling
• Graphics in User Interfaces
Control Flow and the Java Virtual Machine
• JVM overview
• Exceptions and exception handling
• Recursion in the JVM
• Multi-threading and synchronisation
Storage and Files in Java
• Garbage Collection
• Strings and Character Encodings
• Input/Output and Object Serialisation
Validation and Verification
• Black Box Testing
• White Box Testing
• Integration Testing Strategies
Learning and Teaching
Teaching and learning methods
The content of this module is delivered through lectures, the module website, directed reading and pre-recorded materials.
Students work on their understanding through a combination of independent study and preparation for timetabled activities, along with formative assessments in the form of coursework assignments.
Students work on their practical skills and technical understanding in technical laboratories and assessed laboratories.
Assessment
Assessment strategy
This module is assessed by a combination of coursework, assessed laboratories and a final assessment in the form of a computer aided examination.