globe1 Image dept Image
course Title

Course Schedule

This schedule is tentative and subject to change. The readings are from the recommended course textbook (Koffman/Wolfgang). 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.

Jim Henson Photo Jim Henson (University of Maryland College Park Alumnus)

CMSC 132 Schedule (Subject to Change)
Week Topics Reading Slides/Code Work Supplemental Honors material
cmsc132 Schedule
Week #1
(Jan 26)
Introduction to OOP (Abstraction, Encapsulation), Java Language Features (Enumeration, Comparable/Comparator Interface) Chapters 1.2, 4.1 → 4.3, Appendix A CourseIntro.pdf OOPAbstraction.pdf OOPAbstractionCode.zip JavaConstructs.pdf JavaConstructsCode.zip
  • Eclipse installation
  • HW#1 Out (Thu/Jan 29)
Week #2
(Feb 2)
Abstract Classes, Java Support for OOP, Testing, Program Correctness (Errors, Exceptions, Debugging) Chapter 2.1 → 2.7, Appendix A AbstractClasses.pdf JavaOOP.pdf JavaOOPCode.zip ProgramCorrectness.pdf
  • Proj#1(Review) Out
    (Thu/Feb 5)

  • HW#1 Due (Thu/Feb 5)
Week #3
(Feb 9)
Testing, Program Correctness (Cont.), Inner Classes, Event-Driven Programming (GUI Intro) Appendix C InnerClasses.pdf
AnonymousClassesCode.zip GUI.pdf GUICode.zip
  • Quiz#1 (Wed/Feb 11)
Week #4
(Feb 16)
Algorithmic Complexity, Java Collections, Linear Data Structures (Linked lists, Stacks, Queues) Chapters 4, 5, 6 AlgorithmicComplexity.pdf
AlgorithmicComplexityII.pdf CollectionAbstractions.pdf LinearStructures.pdf LinearDataStructuresCode.zip
  • Proj#1 Due(Tue/Feb 17)
  • HW#2 Out (Tue/Feb 17)
Week #5
(Feb 23)
Linear Data Structures (Cont.), Generic Programming, Hashing, Sets, Maps Chapter 9 LinkedListCode.zip Generics.pdf GenericsCode.zip Hashing.pdf HashingCode.zip SetsMaps.pdf SetsMapsCode.zip
  • HW#2 Due (Thu/Feb 26)

  • Proj#2(Collections) Out (Thu/Feb 26)
Week #6
(Mar 2)
Recursion, Trees, Binary Search Trees Chapter 7, 8 RecursiveAlgorithms.pdf RecursiveAlgorithmsCode.zip TreesBST.pdf BinaryTreeCode.zip PolymorphicListCode.zip
Week #7
(Mar 9)
Binary Search Trees (Cont.) Chapter 8
  • Quiz#2 (Mon/Mar 9)
  • Proj#2 Due (Thu/Mar 12)

JavaScript JavaScript Code
Spring Break Week (March16→March20)-wedontprogram@we.will.be.at.the.beach.com
Week #8
(Mar 23)
File I/O, Heaps, Priority Queues Appendix A HeapsPriorityQueues.pdf JavaIO.pdf JavaIOCode.zip SimplifiedListImplementation.pdf
  • Proj#3(Trees) Out (Mon/Mar 23)
  • Midterm (Wed/Mar 25)
Week #9
(Mar 30)
Network Basics, Software Development, Software Life Cycle, Software Process Models Chapters 1,2 Networking.pdf JavaNetworkingCode.zip SoftwareDevelopmentSEI.pdf SoftwareProcessModelsSEII.pdf ProblemSpecificationDesignSEIII.pdf
  • HW#3 Out (Thu/Apr 2)
  • Proj#3 Due (Fri/Apr 3)
Week #10
(Apr 6)
Problem Specification & Design, Object-Oriented (OO) Design, Unified Modeling Language (UML) Chapter 3, Appendix B
ProgramTestingSEIV.pdf ObjectOrientedDesignSEV.pdf UMLSEVI.pdf
  • HW#3 Due (Thu/Apr 9)
  • Quiz#3 (Wed/Apr 8)
  • Proj#4 Out(System Design)(Thu/Apr 9)

Week #11
(Apr 13)
Threads & Synchronization Threads.pdf ThreadsCode.zip ProgressBar.zip Synchronization.pdf SynchronizationCode.zip
  • Proj#4(Design) Due
    (Thu/Apr 16)

  • Quiz#4 (Take-home) Out (Wed/Apr 15)
Advanced Concurrency
Week #12
(Apr 20)
Graphs, Graph Traversals, Shortest Path Chapter 12 GraphTraversal.pdf
DijkstrasAlgorithm.pdf DijkstrasExample.pdf GraphImplementation.pdf PriorityQueueCode.zip
  • Quiz#4 (Take-home) Due (Wed Apr 22)

  • Proj#4(Implementation)
    Due (Thu Apr/23)

  • HW#4 Out (Thu Apr 23)
Spanning
Trees
Week #13
(Apr 27)
Sorting, Algorithm Strategies, Design Patterns
Chapter 10, 12 Sorting.pdf AlgorithmStrategies.pdf DesignPatternsI.pdf PizzaDecoratorCode.zip
  • Proj#5(Graphs) Out
    (Mon/Apr 27)

  • Quiz#5 (Mon/Apr 27)

  • HW#4 Due (Thu Apr 30)
Week #14
(May 4)
Design Patterns, Callbacks, Effective Java, Course Evaluations Callbacks.pdf
DesignPatternsII.pdf
VisitorCode.zip
StateCode.zip
EffectiveJavaI.pdf
EffectiveJavaII.pdf
Proj#5 Due (Wed/May 6) Advanced
Trees.pdf
Week #15
(May 11)
Effective Java, Miscellaneous, Final Exam Review FinalSummary.pdf

  • Last Day Classes (Tue/May 12)

  • Final Exam
    (Fri/May 15, 4:00pm-6:00pm)

Web Accessibility