Concurrent Programming Researcg Group
  Home   |   Members   |    Events   |    Publications   |    Courses   |    Activities   |    Resources   |    Forum   |
 

Following is a list of recommended courses for people with interest in concurrent programming:

CS 425 Database Organization

Overview of database architectures, including the Relational, Hierarchical, Network, and Object Models. Database interfaces, including the SQL query language. Database design using the Entity-Relationship Model. Issues such as security, integrity, and query optimization. Prerequisite: CS 106 or CS 200. (3-0-3) (T)

CS 450 Operating Systems I

Introduction to operating system concepts—including system organization for uniprocessors and multiprocessors, scheduling algorithms, process management, deadlocks, paging and segmentation, files and protection, and process coordination and communication. Prerequisites: (CS 331 and CS 350) or (CS 331 and ECE 242) or (CS 401 and CS 402). (3-0-3) (T)

CS 536 Science of Programming

A scientific application of theory and principles to computer programming. Proving properties of programs, semantic analysis of languages, simultaneous development of a program and its proof. Prerequisite: CS 331 or consent of instructor. (3-0-3)

CS 545 Concurrent Programming

Covers the state of the art in the specification, design and implementation of concurrent languages. Concepts and notations for the development and analysis of concurrent programs. Concurrent Ada, Concurrent-C, and CSP are some of the languages covered and compared. Classical scheduling and many distributed algorithms are implemented. Prerequisite: CS 450. (3-0-3)

Concurrent Programming in Java: Threads and Processes (CS 704-871)

Java multithreading language constructs and Java concurrency design patterns. Building thread-safe applications. Introduction to concurrent programming and solving common concurrent programming problems in Java. Server-side programming with Java Servlets, EJB, and JSP. Network programming with TCP/IP communication. Prerequisite: CS 706

Java Graphical User Interfaces: AWT, and Swings (CS 705-871)

Thorough coverage of the advance features for Java Swings, AWT and Java 2D API. Swings object-orientated idioms and the pluggable look and feel architecture for the Java language. Understanding why Swings are not thread-safe and building multithreaded Swing-based applications.

Object Oriented Design in Java (CS 706–871)

This course teaches object-oriented design patterns in the Java programming language. The Java programming constructs are discussed briefly. Examples are drawn from the Java class library. A Catalog of reusable design patterns illustrated with UML will be covered.


 
 
This website is still under construction - Please send suggestions and comments to Thomas Cottenier : cotttho@iit.edu