Table of contents
Module Link/Module Webpage
Lecturer: James Archbold
Term: 1
Status: Core
Assessment: 40% Programming Assignments, 60% Final Exam
- Introduction to programming: Programming paradigms; From Specification through Algorithms to Implementation; Program compilation and testing.
- Building Elements: Preconditions and postconditions; Basic data types; Variables, identifiers and scope.
- Control structures: Conditionals; Case statements and loops; Correctness issues when programming with loops.
- Methods: Comparison between iteration and recursion.
- Object oriented programming.
- An introduction to multi-threading.
- Programming with objects and classes: Complex data types; Parameter passing by reference and by value; Encapsulation.
- Class inheritance: Dynamic binding; Multiple inheritance; Interfaces, abstract classes and generics.
- Design, construction and testing
- Error handling and exceptions.