Schedule (Subject to Change)

Week Topics Lecture Videos Lecture Slides and Code Examples Work Lab Slides and Code Examples
Week #1
(May 30)
Course Intro, Abstraction/Encapsulation, Review of Interfaces, JCF, Iterable Interface, Enumerated Types, Comparable, etc., Inheritance W1L2
W1L3
W2L1
W2L2
W2L3
OOPAbstraction.pdf
OOPAbstractionCode.zip
JavaConstructsI.pdf
JavaConstructsICode.zip
InheritanceOne.pdf
InheritanceOneCode.zip
InheritanceTwo.pdf
InheritanceTwoCode.zip
Eclipse installation
P0 Out (Tue)
P1 Out(Wed)
P0 Due (Fri)
Review.zip
Debugging.zip
Week #2
(June 6)
Inheritance, Abstract Classes, Testing, Correctness, Exceptions, Nested Types W3L1
W3L2
W3L3
W4L1
InheritanceThree.pdf
InheritanceThreeCode.zip
TestingCorrectness.pdf
DebuggerExampleCode.zip
JUnitExample.zip
Exceptions.pdf
ExceptionsCode.zip
NestedTypes.pdf
NestedTypes.zip
Exam 1 (Mon)
P2 Out (Tue)
P1 Due (Wed)
TVCode.zip
Week #3
(June 13)
More on Nested Types, Levels of Copying,Clone Method, Garbage Collection, Initialization Block, Object-Oriented design, Lambda Expressions, Algorithmic Complexity W4L2 W5L1
W5L2
W5L3
JavaConstructsII.pdf
JavaConstructsIICode.zip
OODesign.pdf
LambdaExpressions.pdf
LambdaExpressionsCode.zip
AlgorithmicComplexityI.pdf
AlgorithmicComplexityICode.zip
Exam 2 (Mon)
P2 Due (Tue)
P3 Out (Tue)
ComparatorCode.zip
SingletonDecoratorPatterns.pdf
PizzaDecoratorCode.zip
TimeStrCode.zip
CommandLine.java
Week #4
(June 20)
More on Complexity of Algorithms, Collections, Generic Programming, Linear Data Structures W6L1
W6L2
W6L3
W7L1
Collections.pdf
Collections.zip
Generics.pdf
GenericCode.zip
LinearDataStructures.pdf
LinearDataStructuresCode.zip
Juneteenth Holiday(Mon - No class)
Exam #3 (Tue)

P3 Due (Wed)

P4 Out(Fri)

StatePatternDynSystems.pdf
StateCode.zip
UMLIntro.pdf
Week #5
(June 27)
More on Linked Lists, Stacks, Queues, Deques, Recursion, Java I/O, Hashing, Sets/Maps, More on Algorithmic Complexity W7L2
W7L3
W8L1
W8L2
W9L1
W9L2
RecursiveAlgorithms.pdf
RecursiveAlgorithmsCode.zip
JavaIO.pdf
JavaIOCode.zip
Hashing.pdf
HashingCode.zip
SetsMaps.pdf
SetsMapsCode.zip
AlgorithmicComplexityII.pdf
Exam 4 (Debug Exam)
P4 Due (Fri)
P5 Out (Fri)
DesignExercise.pdf
SimplifiedListImplementation.pdf
Week #6
(July 4)
More on Algorithmic Complexity, Trees, Polymorphic Lists/Trees W9L3
W10L1
W10L2
W10L3
Trees.pdf
LectureBinaryTreeCode.zip
PolymorphicListsTrees.pdf
PolymorphicListsTreesCode.zip
July 4th Holiday (Mon - No class) Exam 5 (Wed)
P5 Due (Fri)
P6 Out (Fri)
HashingListsSetWorksheet.pdf
MapsWorksheet.pdf
Week #7
(July 11)
Heaps, Priority Queues, Threads, and Synchronization W11L1
W11L2
W11L3
W12L1
HeapsPriorityQueues.pdf
ThreadsI.pdf
ThreadsICode.zip
ThreadsII.pdf
ThreadsIICode.zip
SynchronizationI.pdf
SynchronizationICode.zip
Exam 6 (Tue)
Networking.pdf
NetworkingCode.zip
BSTWorksheet.pdf
Week #8
(July 18)
More on Threads, Graph, BFS, DFS, Graph Implementation W12L2
W13L1
W14L1
W14L2
SynchronizationII.pdf
SynchronizationIICode.zip
MoreOnThreads.pdf
ExtraThreadExamples.zip
GraphsTraversal.pdf
GraphImplementation.pdf
P7 Out (Mon)
P6 Due (Tue)
Exam 7 (Thur)
HeapExercise.pdf
ThreadWorksheetI.pdf
Week #9
(July 25)
Dijkstra's Alg.,PriorityQueue from JCF, Sorting W14L3
W15L1
W15L2
DijkstrasAlgorithm.pdf
DijkstrasExample.pdf
PriorityQueueCode.zip
Sorting.pdf
P7 Due (Tue)
P8 Out (Tue)
Exam 8 (Thur)
JavaStreams.pdf
StreamsCodeExample.zip
Week #10
(Aug. 1)
More on Sorting, Git and Version Control W15L3
W16L1
Git.pdf
Exam 9 (Tue)
P8 Due(Wed)
Exam 10 (Fri)
Web Accessibility