From dfad97fdd9045a884fc13d6ac90a88a83a2a608f Mon Sep 17 00:00:00 2001
From: Alaharon123 <34926441+Alaharon123@users.noreply.github.com>
Date: Fri, 1 Feb 2019 16:40:44 -0500
Subject: [PATCH] Add WPI CS 2102
This course follows CS 1101, which is based on How to Design Programs. CS 2102 could be a good sequel to How to Code: Simple Data and How to Code: Complex Data.
---
README.md | 3 +++
1 file changed, 3 insertions(+)
diff --git a/README.md b/README.md
index 7ed0bfc..d7ee617 100644
--- a/README.md
+++ b/README.md
@@ -334,6 +334,9 @@ Courses
- Algorithms class covering recursion, randomization, amortization, graph algorithms, network flows and hardness. The lecture notes by Prof. Erikson are comprehensive enough to be a book by themselves. Highly recommended!
- [Lecture Notes](http://web.engr.illinois.edu/~jeffe/teaching/algorithms/all-algorithms.pdf)
- [Labs and Exams](http://web.engr.illinois.edu/~jeffe/teaching/algorithms/all-hwex.pdf)
+- [CS 2102](http://web.cs.wpi.edu/~cs2102/b16/index.html) **Object-Oriented Design Concepts** *Worcester Polytechnic Institute*
+ - CS 2102 is an intermediate-level course on program design. CS1101/1102 (How to Design Programs) focused on designing single-task programs for correct behavior. In CS2102, we begin to consider multi-task programs, more complex data, and other design goals—such as maintainability and scalability—without sacrificing correct program behavior. The course examines interactions between data structures, algorithms, invariants, and object-oriented code structure in the pursuit of good program design. All programming in the course is in Java, but the course does not assume prior Java experience. While the course covers certain issues specific to Java and object-oriented programming, the general principles apply broadly to most programming languages.
+ - [Syllabus, Readings, Assignments, etc](http://web.cs.wpi.edu/~cs2102/b16/syllabus.html)
- [CS 2150](https://github.com/aaronbloomfield/pdr) **Program & Data Representation** *University of Virginia*
- This data structures course introduces C++, linked-lists, stacks, queues, trees, numerical representation, hash tables, priority queues, heaps, huffman coding, graphs, and x86 assembly.
- [Lectures](http://aaronbloomfield.github.io/pdr/slides/)