CMSC 132, Summer 2015

Object-Oriented Programming II

Schedule

Lectures & Discussions

Week of: Lecture Topics Slide/Examples Assignments Reading List
June 1 Monday Lecture

Course Introduction, Syllabus, Java Review: class, inheritance

Course Introduction

Lecture 1

Capter 1.1
Tuesday Discussion

CVS, Debugging, Inheritance

Debugging

TVCode

Wednesday Lecture Static members, class visibility, abstract classes

Visibility
Lecture 2

Project 1. Due:06/08 Cahpter 1.2

Thursday Discussion

Time Class  
Friday Lecture Array Based Containers

Lecture 3

Static member example

Chapter 1.3
June 8 Monday Lecture

Sorted Bag

Lecture 4

Project 2

Due: 06/16

Chapter 1.3
Tuesday Discussion Time Class Week2 Lab1
Wednesday Lecture Comparable, Comparator, Clone Lecture 5

Thursday Discussion

comparator-clone-finalize

Week2 Lab2

Friday Lecture GUI  
June 15 Monday Lecture

Linked List

Lecture 7

Chapter 1.3
Tuesday Discussion

Quiz 1

Linked List examples

 

Project 3

Due: 06/22

Wednesday Lecture

Linked List, List Iterator

Lecture 8

Thursday Discussion

Group project  
Friday Lecture Double Linked List

Lecture 9
Doubly Linked List

June 22 Monday Lecture

Stack and Queue

Lecture10 Queue
Lecture 10 Stack
Stack & Queue

Chapter 1.3
Tuesday Discussion  
Wednesday Lecture Recursion

Lecture 11

Recursion

Thursday Discussion

   
Friday Lecture 6/26 Midterm 1  
June 29 Monday Lecture

Recursion 2: Recursive Shapes, Maze

Lecture 12

Project 4

Due: 07/06

Tuesday Discussion Group Project Group project 2
Wednesday Lecture Tree, Binary Tree

Lecture 13

Trees

Thursday Discussion

 
Friday Lecture Holioday  
July 6 Monday Lecture

Binary Search Tree

Lecture 14
BST Code

Project 5

Due: 07/10

Chapter 3.2 BST
Tuesday Discussion  
Wednesday Lecture Red Black Tree

Red Black Tree

Red Black BST Code

Cahpter 3.3

Thursday Discussion

 
Friday Lecture More BST

PolymorphicListsTrees

PolymorphicListCode

Project 6

Due: 07/17

July 13 Monday Lecture

Heaps and Priority Queue

Heaps and Priority Queue

Demo Code: PriorityQueue

Chapter 2.4
Tuesday Discussion Group Project Group Project 3
Wednesday Lecture Algorithm Complexity Big-O Chapter 1.4

Thursday Discussion

 
Friday Lecture Concurrency

Threads

multi-thread code example

Project 7
July 20 Monday Lecture

Concurrency 2

Synchronization

Code Examples

Tuesday Discussion  
Wednesday Lecture Huffman Code, Hash Table Hash Huffman Code Examples Chapter 3.4

Thursday Discussion

 
Friday Lecture 07/24 Midterm 2  
July 27 Monday Lecture

Sorting

Merge Quick HeapSort

Code Example :Sort

Tuesday Discussion  

Project 8

Due: 08/07

Wednesday Lecture Sorting, Graph Merge Quick HeapSort Chapter 4

Thursday Discussion

Group Project 4  
Friday Lecture BFS, DFS, Shortest Path, MST

Undirected Graphs

Graph Code

August 3 Monday Lecture

Wildcards, RegEx, Design Patterns

Generics

generics code example

Tuesday Discussion Exam review  
Wednesday Lecture Effective Java Effective Java

Thursday Discussion

 
Friday Lecture 08/07 Final Exam  

Web Accessibility