CS 282: Principles of Operating Systems II: Concurrent Java Network Programming in Android
- Douglas C. Schmidt
- d.schmidt@vanderbilt.edu
- Department of Electrical Engineering and Computer Science
- School of Engineering
- Vanderbilt University
Times and Locations
- Classroom -- Featheringill Hall 132, Monday and Wednesday from 3:10-4:25pm
- Office Hours -- Featheringill Hall 226, Monday and Wednesday 1:00pm to 3:00pm.
- Programming assignment submission guidelines
- TAs/graders
- Final exam time is 2pm to 5pm, Saturday, December 17th in ESB 48.
Philosophy
Developing high quality concurrent and networked software for mobile
devices and cloud services is hard; developing high quality
reusable concurrent and networked software is even harder. The
principles, methods, and skills required to develop reusable software
cannot be learned by generalities. Instead, developers must learn
through experience how reusable concurrent and networked software
components and frameworks can be designed, implemented, optimized,
validated, maintained, and enhanced by applying good development
practices and patterns.
Prerequisites
- Proficiency in Java, i.e., as covered in CS 101
- Proficiency in software patterns, i.e., as covered in CS 251
- Proficiency in Android, i.e., as covered in CS 251
- Knowledge of email, the Web, and online discussion forums
- Awareness of--and adherence to--the Vanderbilt University Honor Code, which governs all work in this course (e.g. tests, papers, homework assignments, etc.).
The following are electronic versions of my course handouts.
Back to CS Courses home page.