Lectures
Course 1
Suggested Reading:
- Concurrent and distributed computing in Java by Vijay K. Garg: Sections 1.1, 1.2, 1.4, 1.6, 2.1, 3.1-3.4
- Java Concurrency in Practice by Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea: Section 2.1
Courses 2 and 3
Suggested Reading:
- Concurrent and distributed computing in Java by Vijay K. Garg: Sections 3.2, 3.3, 3.5
- Deadlock, Producer-Consumer Java Tutorial - Concurrency
- Java Concurrency in Practice by Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea: Section 3.1
Course 4
Suggested Reading:
- Java Concurrency in Practice by Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea: Section 3.2-3.5
Courses 5 and 6
Suggested Reading:
- Java Concurrency in Practice by Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea: Chapters 4 and 5
Course 7
Suggested Reading:
- Java Concurrency in Practice by Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea: Chapter 6
Courses 8 and 9
Suggested Reading:
- Java Concurrency in Practice by Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea: Sections 7.1, 7.2(optional), 7.3, 7.4, 10.1, 13.1
Course 10
Suggested Reading:
- Java Concurrency in Practice by Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea: Sections 11.1-11.4
- Course slides (for the Distributed Systems part)
Courses 11 and 12
Suggested Reading:
- Course slides (for the Distributed Systems Architectures part)
- JMS Tutorial
- Course slides (for the Event-Based Programming introductory part, including the "Monitoring Your House" example)
- Event-Based Programming. Taking Events to the Limit by Ted Faison: Chapter 2 up to Page 78 (before "Event Subscription")
Course 13
Suggested Reading:
- Event-Based Programming. Taking Events to the Limit by Ted Faison: Chapter 2, pages 78-89 (from "Event Subscription" to the end of the chapter), Chapter 3 (up to Page 103, just before "Delivery Using Procedure Calls")
Information updated on November 25, 2009
Very important notice: The course slides required for the 2009/2010 evaluations (distributed evaluations and exams) are those referred by this page, with the modifications posted on November 25, 2009. Please update your file, in case you have downloaded it prior to November 25, 2009. The new version of the file is called pcbe-curs-2009.pdf, and contains the same updated material as the above, per-course files.
The content of the newer file reflects the correct state of the course, as modified during the current semester. Please disregard the older file and only refer to the current version.
The "Suggested Reading" section below was also updated to reflect the changes made during this semester.
All slides, numbered, printer-friendly, UPDATED VERSION, nov. 25, 2009 (Current version, complete)
Suggested Reading:
- Concurrent and distributed computing in Java by Vijay K. Garg: Sections 1.1, 1.2, 1.4, 1.6, 2.1, 3.1-3.5
- Deadlock, Producer-Consumer Java Tutorial - Concurrency
- Java Concurrency in Practice by Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea: Sections 2.1, 3.1-3.5, Chapter 4, Chapter 5, Chapter 6, 7.1, 7.2(optional), 7.3, 7.4, 10.1, 13.1, 11.1-11.4
- Course slides (for the Distributed Systems & Architectures part)
- JMS Tutorial
- Event-Based Programming. Taking Events to the Limit by Ted Faison: Chapters 2, 3, up to, and including Page 119 'Transactions'
Dear students,
The slides on this page were designed not only as the course presentation support, but also to serve as a (hopefully) useful tool for study. Therefore, the number of slides may be a bit larger than one may expect, but the only reason for this is related to my intention of making the material as detailed as possible (while keeping it decent for a presentation). I hope the text helps you better focus the learning process, and that you find it as a useful complement to your own lecture notes. As always, feedback is welcome.
Dan