Course Schedule
This schedule is tentative and subject to change. Keep in mind that the slides may not include all the material discussed in lecture. You are responsible for any material we present in lecture, even if it does not appear in the posted slides.
| Week | Topics | Slides/Code | Work | Textbook (Carrano/Henry) |
|---|---|---|---|---|
| CMSC132 Schedule | ||||
| Week #1 (Aug 28) |
Course Intro, Abstraction/Encapsulation, Enumerated Types, Comparable, Debugger |
CourseIntro.pdf OOPAbstraction.pdf OOPAbstractionCode.zip JavaConstructsI.pdf JavaConstructsICode.zip |
Eclipse installation P1 Out (Thu) |
Appendix A, B, C |
| Week #2 (Sep 4) |
Inheritance |
InheritanceOne.pdf InheritanceCode.zip InheritanceTwo.pdf InheritanceTwoCode.zip |
Quiz (Wed) P1 Due (Thu) |
Appendix D, Java Interlude 7 |
| Week #3 (Sep 11) |
Inheritance, Abstract Classes, Testing, Correctness, Exceptions |
InheritanceThree.pdf InheritanceThreeCode.zip TestingCorrectness.pdf Exceptions.pdf ExceptionsCode.zip |
P2 Out (Mon) Quiz (Wed) |
Java Interlude 2, 5 |
| Week #4 (Sep 18) |
Comparator Interface (Lab), Inner Classes, OO Design Intro Levels of Copying, Cloning, Constructor/Destructor, Initialization Blocks |
InnerClasses.pdf InnerClassesCode.zip OODesign.pdf JavaConstructsII.pdf JavaConstructsIICode.zip |
P2 Due (Tue) P3 Out (Tue) Quiz (Debugging) (Wed) |
Prelude, Java Interlude 6, 9 |
| Week #5 (Sep 25) |
Event-Driven Programming, GUI, UML (Lab), JavaFX, Lambda Expressions, Algorithmic Complexity |
GUI.pdf GUICode.zip AlgorithmicComplexityI.pdf |
P3 Due (Thu) P4 Out (Thu) |
|
| Week #6 (Oct 2) |
Dynamic System/State Design Pattern (Lab), Iterator/Marker/Observer Design Patterns (Lab), Generic Programming, Collections, Linear Data Structures |
Generics.pdf GenericsCode.zip Collections.pdf LinearDataStructures.pdf LinearDataStructuresCode.zip |
Midterm #1 (Wed) |
Chapter 4, Java Interlude 1, 3, 8 |
| Week #7 (Oct 9) |
Linear Data Structures, Recursive Algorithms, Memory Maps |
RecursiveAlgorithms.pdf RecursiveAlgorithmsCode.zip |
P4 Due (Mon) P5 Out (Wed) Mid-Term Grades (Thu, Oct 12) |
Chapters 3, 6, 7, 12, 13, 14, 15, 16, 17 |
| Week #8 (Oct 16) |
Hashing, Sets/Maps, Simplified List Implementation, File I/O, Singleton and Decorator Design Patters (Lab) |
Hashing.pdf HashingCode.zip SetsMaps.pdf SetsMapsCode.zip JavaIO.pdf JavaIOCode.zip |
P5 Due (Fri) P6 Out (Thu) |
Chapters 21, 22, Appendix E |
| Week #9 (Oct 23) |
Trees, Algorithmic Complexity II, Heaps/Priority Queues Network Basics (Lab) |
Trees.pdf LectureBinaryTreeCode.zip AlgorithmicComplexityII.pdf HeapsPriorityQueues.pdf |
Quiz (Wed) |
Chapters 23, 24, 25, 26 |
| Week #10 (Oct 30) |
Polymorphic Lists/Trees |
PolymorphicListsTrees.pdf PolymorphicListsTreesCode.zip |
Quiz (Wed) P6 Due (Wed) P7 Out (Thu) |
|
| Week #11 (Nov 6) |
Trees, Threads |
ThreadsI.pdf ThreadsICode.zip ThreadsII.pdf ThreadsIICode.zip |
Midterm #2 (Wed) |
|
| Week #12 (Nov 13) |
Synchronization I/II, Graphs Intro/Graph Traversals |
SynchronizationI.pdf SynchronizationICode.zip SynchronizationII.pdf SynchronizationIICode.zip GraphsTraversal.pdf |
P7 Due (Wed) P8 Out (Wed) |
Chapters 28, 29 |
| Week #13 (Nov 20) |
Dijkstras, Thanksgiving (no class Wed, Fri) |
DijkstrasAlgorithm.pdf DijkstrasExample.pdf PriorityQueueCode.zip |
Thanksgiving | |
| Week #14 (Nov 27) |
Sorting, Effective Java, Graph Implementation (Lab), Algorithm Strategies |
Sorting.pdf EffectiveJava.pdf GraphImplementation.pdf AlgorithmStrategies.pdf |
P8 Due (Tue) P9 Out (Wed) |
Chapters 8, 9 |
| Week #15 (Dec 4) |
Advanced Tree Structures (Lab), Software Life Cycle, Software Process Models, Problem Specification & Design, Testing |
SoftwareDevelopmentSEI.pdf SoftwareProcessModelsSEII.pdf ProbSpecificationSoftArchSEIII.pdf ProgramTestingSEIV.pdf |
P9 Due (Fri) Course Evaluations |
Chapter 27 |
| Week #16 (Dec 11) |
Final Exam Review |
MiscReview.pdf |
Last Day of Classes (Mon Dec 11) Final Exam (Thu Dec 14, 4pm - 6pm) |
|