Week | Topics | Lecture Slides and Code Examples | Work | Textbook Readings | Lab Slides and Code Examples | |
---|---|---|---|---|---|---|
Week #1 (Aug 29) |
Course Intro, Abstraction/Encapsulation, Review of Interfaces, JCF, Iterable Interface, Enumerated Types, Comparable, etc. |
CourseIntro.pdf OOPAbstraction.pdf OOPAbstractionCode.zip JavaConstructsI.pdf JavaConstructsICode.zip |
Eclipse installation P1 Out(Fri) |
Appendix A, B, Supplement 1, Prelude |
Review.zip |
|
Week #2 (Sep 5) |
Inheritance |
InheritanceOne.pdf InheritanceCode.zip InheritanceTwo.pdf InheritanceTwoCode.zip |
Appendix C, Java Interlude 7 |
Debugging.zip |
||
Week #3 (Sep 12) |
Inheritance, Abstract Classes, Exceptions |
InheritanceThree.pdf InheritanceThreeCode.zip Exceptions.pdf ExceptionsCode.zip |
Quiz #1 (Mon) P1 Due (Wed) P2 Out (Thurs) |
Java Interlude 2, 3 |
TVCode.zip |
|
Week #4 (Sep 19) |
Testing, Correctness, Comparator Interface (Lab), Nested Types |
TestingCorrectness.pdf DebuggerExampleCode.zip NestedTypes.pdf NestedTypes.zip |
Exam #1 (Fri) |
Java Interlude 4, 6 |
ComparatorCode.zip |
|
Week #5 (Sep 26) |
Clone Method, Levels of Copying,Initialization Blocks, Algorithmic Complexity |
JavaConstructsII.pdf JavaConstructsIICode.zip AlgorithmicComplexityI.pdf AlgorithmicComplexityICode.zip |
P2 Due (Wed) P3 Out (Thu) |
Chapter 4, 19, Java Interlude 9 |
SingletonDecoratorPatterns.pdf PizzaDecoratorCode.zip TimeStrCode.zip CommandLine.java |
|
Week #6 (Oct 3) |
Lambda Expressions, Generic Programming, Collections, Object-Oriented design(Lab), Dynamic System/State Design Pattern (Lab) |
LambdaExpressions.pdf LambdaExpressionsCode.zip Collections.pdf Collections.zip Generics.pdf GenericCode.zip |
Quiz#2 (Debugging) |
Java Interlude 1, 5, 8, Chapters 10, 11, 12, 17, 19 |
Week 6 Lab Video 1 StatePatternDynSystems.pdf StateCode.zip Week 6 Lab Video 2 (Only watch to 15:40) OODesign.pdf |
|
Week #7 (Oct 10) |
Linear Data Structures, Recursive Algorithms, UML and Design (Lab) |
LinearDataStructures.pdf LinearDataStructuresCode.zip RecursiveAlgorithms.pdf RecursiveAlgorithmsCode.zip |
P3 Due (Mon) P4 Out (Tue) |
Chapter 9, 14 |
UMLIntro.pdf DesignExercise.pdf |
|
Week #8 (Oct 17) |
Dummy Node LL (Lab), LL Recursive Examples, Sets/Maps ADT |
SetsMaps.pdf SetsMapsCode.zip |
Exam #2 (Fri) |
Supplement 2, Chapter 22, 23 |
SimplifiedListImplementation.pdf JCF LL JCF List Iterator |
|
Week #9 (Oct 24) |
Algorithmic Complexity II, File I/O Networking (Lab) |
AlgorithmicComplexityII.pdf JavaIO.pdf JavaIOCode.zip |
P4 Due (Tue) P5 Out (Tue) |
Chapters 24, 25, 26, 27 |
Networking.pdf NetworkingCode.zip MapsWorksheet.pdf |
|
Week #10 (Oct 31) |
Hash Tables, Regular Expressions |
Hashing.pdf HashingCode.zip RegularExpressions.pdf RegularExpressionsExample.zip |
Quiz#3 (Wed) |
LLlab.pdf |
||
Week #11 (Nov 7) |
Polymorphic Lists (Lab), Trees, BST, Heaps, Priority Queues |
Trees.pdf LectureBinaryTreeCode.zip HeapsPriorityQueues.pdf |
P5 Due (Tue) P6 Out (Thurs) |
PolymorphicListsTreesCode.zip |
||
Week #12 (Nov 14) |
More on Heaps,Intro to Threads |
ThreadsI.pdf ThreadsICode.zip |
Exam #3 (Fri) |
Chapter 29, 30 |
PolymorphicListsTrees.pdf HashingListsSetWorksheet.pdf |
|
Week #13 (Nov 21) |
Threads and Synchronization, Thanksgiving (no class Wed, Fri) |
ThreadsII.pdf ThreadsIICode.zip SynchronizationI.pdf SynchronizationICode.zip SynchronizationII.pdf SynchronizationIICode.zip |
P6 Due (Mon) P7 Out(Tue) Thanksgiving |
JavaStreams.pdf StreamsCodeExample.zip |
||
Week #14 (Nov 28) |
Graphs Intro/Graph Traversals, Graph Implementation, Dijkstra's Alg. |
GraphsTraversal.pdf GraphImplementation.pdf DijkstrasAlgorithm.pdf DijkstrasExample.pdf PriorityQueueCode.zip |
Quiz #4 (Wed) P8 Out(Thurs) |
Chapters 15, 16 |
HeapExercise.pdf TreesBigOWorksheet.zip |
|
Week #15 (Dec 5) |
Sorting |
Sorting.pdf |
P7 Due (Tue) Quiz #5 (Wed) Course Evaluations |
Chapter 28 | ||
Week #16 (Dec 12) |
Final Exam Review (Lab), Optional online lecture on Threads |
Threads video |
MoreOnThreads.pdf ExtraThreadExamples.zip |
P8 Due(Mon) Last Day of Classes (Mon, Dec 12) Final Exam (Thu, Dec 15, 4pm - 6pm) |