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. We also include the code examples presented in class. To import the examples follow the instructions provided at Importing Examples.
| Week | Topics | Slides/Code | Work |
|---|---|---|---|
| cmsc132 Schedule | |||
| Week #1 (May 27) |
Tuesday May 28 (Classes Start), Introduction to OOP (Abstraction, Encapsulation), Java Language Features (Enumeration, Comparable/Comparator Interface), Abstract Classes | CourseIntro.pdf OOPAbstraction.pdf OOPAbstractionCode.zip JavaConstructsI.pdf JavaConstructsICode.zip AbsClassesModifiers.pdf AbsClassesModifiersCode.zip |
|
| Week #2 (Jun 3) |
Java Language Features (Cont.), OO Design Intro, Inner Classes, Event-Driven Programming (GUI Intro) |
JavaConstructsII.pdf
JavaConstructsIICode.zip
OODesign.pdf
InnerClasses.pdf InnerClassesCode.zip GUI.pdf GUICode.zip |
|
| Week #3 (Jun 10) |
Testing/Program Correctness (Errors, Exceptions, Debugging), Algorithmic Complexity, Generic Programming, UML Lite (Lab) | ProgramCorrectness.pdf ExceptionCode.zip AlgorithmicComplexityI.pdf Generics.pdf GenericsCode.zip |
|
| Week #4 (Jun 17) |
Collections, Linear Data Structures, Hashing, Sets/Maps | Collections.pdf LinearDataStructures.pdf LinearDataStructuresCode.zip Hashing.pdf HashingCode.zip SetsMaps.pdf SetsMapsCode.zip |
|
| Week #5 (Jun 24) |
Algorithmic Complexity II, Effective Java, Recursion, Polymorphic Lists, Trees, Binary Search Trees | AlgorithmicComplexityII.pdf EffectiveJava.pdf RecursiveAlgorithms.pdf RecursiveAlgorithmsCode.zip Trees.pdf LectureBinaryTreeCode.zip |
|
| Week #6 (Jul 1) |
Binary Search Trees (Cont.), File I/O, Heaps, Priority Queue |
PolymorphicListsTrees.pdf
LecturePolymorphicListCode.zip
JavaIO.pdf JavaIOCode.zip HeapsPriorityQueues.pdf |
|
| Week #7 (Jul 8) |
Software Life Cycle, Software Process Models, Problem Specification & Design Testing, Threads (Intro) | SimplifiedListImplementation.pdf SoftwareDevelopmentSEI.pdf SoftwareProcessModelsSEII.pdf ProbSpecificationSoftArchSEIII.pdf ProgramTestingSEIV.pdf ThreadsI.pdf ThreadsCode.zip |
|
| Week #8 (Jul 15) |
Threads, Synchronization, Graphs | ThreadsII.pdf ProgressBar.zip SynchronizationI.pdf SynchronizationICode.zip SynchronizationII.pdf SynchronizationIICode.zip GraphsTraversal.pdf |
|
| Week #9 (Jul 22) |
Graph Implementation, Shortest Path, Sorting, Algorithm Strategies, Callbacks, Design Patterns I |
GraphImplementation.pdf
DijkstrasAlgorithm.pdf
DijkstrasExample.pdf
PriorityQueueCode.zip
Sorting.pdf
AlgorithmStrategies.pdf
Callbacks.pdf DesignPatternsI.pdf PizzaDecoratorCode.zip |
|
| Week #10 (Jul 29) |
Design Patterns II, Advanced Tree Structures, Advanced Concurrency |
DesignPatternsII.pdf VisitorCode.zip StateCode.zip AdvancedTreeStructures.pdf AdvancedConcurrency.pdf MiscReview.pdf |
|