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 (Secs 040x/Honors) Schedule | ||||
| Week #1 (Aug 29) |
Course Intro, Abstraction/Encapsulation, Enumerated Types, Comparable, Debugger |
CourseIntro.pdf OOPAbstraction.pdf OOPAbstractionCode.zip JavaConstructsI.pdf JavaConstructsICode.zip |
Eclipse installation E1 Out (Thu) |
Appendix A, B, C |
| Week #2 (Sep 5) |
Inheritance |
InheritanceOne.pdf InheritanceCode.zip InheritanceTwo.pdf InheritanceTwoCode.zip |
Quiz (Wed) E1 Due (Thu) |
Appendix D, Java Interlude 7 |
| Week #3 (Sep 12) |
Inheritance, Abstract Classes, Testing, Correctness, Exceptions, Comparator Interface (Lab), Inner Classes |
InheritanceThree.pdf InheritanceThreeCode.zip TestingCorrectness.pdf Exceptions.pdf ExceptionsCode.zip |
P1 Out (Mon) Quiz (Wed) |
Java Interlude 2, 5 |
| Week #4 (Sep 19) |
Inner Classes, OO Design Intro Levels of Copying, Cloning, Constructor/Destructor, Initialization Blocks |
InnerClasses.pdf InnerClassesCode.zip OODesign.pdf JavaConstructsII.pdf JavaConstructsIICode.zip |
P1 Due (Tue) P2 Out (Tue) Quiz (Debugging) (Wed) |
Prelude, Java Interlude 6, 9 |
| Week #5 (Sep 26) |
Event-Driven Programming, GUI, UML (Lab), JavaFX, Lambda Expressions |
GUI.pdf GUICode.zip |
Midterm #1 (Wed) P2 Due (Thu) P3 Out (Fri) |
|
| Week #6 (Oct 3) |
Algorithmic Complexity, Dynamic System/State Design Pattern (Lab), Iterator/Marker/Observer Design Patterns (Lab), Generic Programming, Collections, Linear Data Structures |
AlgorithmicComplexityI.pdf Generics.pdf GenericsCode.zip Collections.pdf LinearDataStructures.pdf LinearDataStructuresCode.zip |
P3 Due (Fri) |
Chapter 4, Java Interlude 1, 3, 8 |
| Week #7 (Oct 10) |
Linear Data Structures, Recursive Algorithms, Memory Maps |
RecursiveAlgorithms.pdf RecursiveAlgorithmsCode.zip |
P4 Out (Wed) Early Warning Grades(Oct 13) |
Chapters 3, 6, 7, 12, 13, 14, 15, 16, 17 |
| Week #8 (Oct 17) |
Hashing, Sets/Maps, Simplified List Implementation, File I/O |
Hashing.pdf HashingCode.zip SetsMaps.pdf SetsMapsCode.zip JavaIO.pdf JavaIOCode.zip |
P4 Due (Fri) P5 Out (Fri) |
Chapters 21, 22, Appendix E |
| Week #9 (Oct 24) |
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 31) |
Polymorphic Lists/Trees |
PolymorphicListsTrees.pdf PolymorphicListsTreesCode.zip |
P5 Due (Wed) Midterm #2 (Fri) |
|
| Week #11 (Nov 7) |
Trees, Threads |
ThreadsI.pdf ThreadsICode.zip ThreadsII.pdf ThreadsIICode.zip |
P6 Out (Mon) |
|
| Week #12 (Nov 14) |
Synchronization I/II, Graphs Intro/Graph Traversals |
SynchronizationI.pdf SynchronizationICode.zip SynchronizationII.pdf SynchronizationIICode.zip GraphsTraversal.pdf |
P6 Due (Wed) P7 Out (Wed) |
Chapters 28, 29 |
| Week #13 (Nov 21) |
Dijkstras, Thanksgiving (no class Wed, Fri) |
DijkstrasAlgorithm.pdf DijkstrasExample.pdf PriorityQueueCode.zip |
Thanksgiving | |
| Week #14 (Nov 28) |
Graph Implementation (Lab), Effective Java (Lab), Sorting |
GraphImplementation.pdf EffectiveJava.pdf Sorting.pdf |
P7 Due (Tue) Midterm #3 (Wed) P8 Out (Wed) |
Chapters 8, 9 |
| Week #15 (Dec 5) |
Algorithm Strategies, Advanced Tree Structures (Lab), Software Life Cycle, Software Process Models, Problem Specification & Design, Testing |
AlgorithmStrategies.pdf AdvancedTreeStructures.pdf SoftwareDevelopmentSEI.pdf SoftwareProcessModelsSEII.pdf ProbSpecificationSoftArchSEIII.pdf ProgramTestingSEIV.pdf |
P8 Due (Fri) Course Evaluations |
Chapter 27 |
| Week #16 (Dec 12) |
Final Exam Review |
Last Day of Classes (Mon Dec 12) Final Exam (Thu Dec 15, 4pm - 6pm) |
||