Concurrent and Distributed Programming
MSc in Computer Science, Schedule C
MMath and Computer Science
MComputer Science
|
16 lectures, plus extra reading and extra practicals HT
Mr BA Sufrin
Assessed by take-home mini-project
|
Concurrent and Distributed Programming illustrates many of the key challenges that
arise during the design and implementation of concurrent and distributed programs.
It is designed as a practical complement to Concurrency. Although the latter is not a
formal prerequisite for it, attendees at either course will benefit from attendance at
the other.
Learning Outcomes
At the end of the course students are expected to understand:
- The conceptual foundations of concurrent programming, and
- A variety of effective ways of structuring concurrent and distributed programs.
Prerequisites
It would be advantageous to have studied Networks and Operating Systems, but we don't
offer this to our M.Sc. students. Autonomous study of chapter 1 and section 2.1 of
Tanenbaum and van Steen (see Reading List) will probably suffice.
The practicals require a good working knowledge of OOP in Java. The Object-Oriented
Programming courses have historically provided this, and OOP-1 should be considered a
formal prerequisite for those who do not already have extensive OOP experience.2