Click the link in the 'Week' column for the individual weekplan.
Week | Learning Goals |
---|---|
Week 1 | Mon: Introduction to the course. Testing and Test-driven Development. Wed: TDD continued. The HotStone project. |
Week 2 | Mon: Mandatory Hints. Motivation for SCM. Wed: Release and Branching Strategies, Git. Build Management, Gradle. |
Week 3 | Mon: The Strategy pattern derived. Wed: Refactoring and Integration Testing. Definitions of Design Patterns. |
Week 4 | Mon: Clean Code (Screencasted only/Lectures cancelled). Wed: Maintainability and Flexibility. Debugging. |
Week 5 | Mon: State Pattern. Wed: Test Doubles. Abstract Factory. |
Week 6 | Mon: Theory of roles, responsibility, and protocol. Interface Segregation Principle. (Screencasted only.) Wed: Principles of compositional design. Multi-dimensional variance. (Screencasted only.) |
Week 7 | Mon: (Lectures Cancelled) Wed: Design Pattern Catalogue. |
Week 8 | Mon: (Week 43 at 8.15) Systematic Testing: Equivalence Class Partitioning. Wed: Code Coverage. |
Week 9 | Mon: MiniDraw - an example framework. Wed: HotStone support code for MiniDraw. Framework Theory. |
Week 10 | Mon: Networking - TCP/IP. Wed: Distribution and Broker I. Sockets. |
Week 11 | Mon: Broker I Mandatory Intro. Wed: Broker II: Object references. Multi Type Dispatchers. |
Week 12 | Mon: Broker II Mandatory Intro. Wed: HTTP. Web frameworks. URI Tunneling. REST. |
Week 13 | Mon: Docker Containers. Wed: Quality Attributes. Energy-efficiency. |
Week 14 | Mon: Exam Discussion. Wed: Concurrency and Thread Programming. (Screencasted only). |