Lecture Schedule and Readings

Part of CS:2820, Object-Oriented Software Development, Spring 2021
by Douglas W. Jones
THE UNIVERSITY OF IOWA Department of Computer Science

Monday Wednesday Friday, 9:30-10:20 Link and 10:30-11:20 Link

M Jan 25 About this course and Text: Introduction to Objects
W Jan 27 Text: Everything is an Object, Lecture: Java
F Jan 29 Lecture Origin of Object-Oriented Programming
M Feb 1 Modeling, epidemics, highway networks, digital logic
W Feb 3 Everything is a class instance
F Feb 5 Discrete Event Simulation [Last add]
M Feb 8 Text: Operators, Controlling Execution
W Feb 10 Text file design
F Feb 12 Extreme Programming, Waterfalls and Virtual Machines (code)
M Feb 15 Text: Initialization and Cleanup (code)
W Feb 17 Text: Access Control, Reusing Classes (code) [Ash Wednesday (Western Christian)]
F Feb 19 Wrappers and wrapping the scanner (code)
M Feb 22 Text: Polymorphism, Creating Subclasses
W Feb 24 Randomness and Singleton Classes (code)
F Feb 26 Test design, Using Polymorphism (code) (test script) [Purim (Jewish)]
M Mar 1 Scanners
W Mar 3 Lecture: MyScanner Text: Interfaces & Inner Classes (p. 311) (code)
F Mar 5 Miscellaney and Wasted Computation (code)
M Mar 8 Lecture: The Road to Lambda Text: Holding Objects (p. 389) (code)
W Mar 10 Lambda, background information (code)
F Mar 12 Feedback on MP5 before the extended due date
M Mar 15 Discrete Event Simulation and the Pending Event Set [Clean Monday (Eastern Christian)]
W Mar 17 Simulation Frameworks and Building a simulation [Saint Patrick's Day (Christian)] (code)
F Mar 19 Building a simulation (code) (test input)
M Mar 22 Yet More building a simulation and randomness
W Mar 24 And Even More (non-working code)
F Mar 26 And More (working code) (test input)
M Mar 29 More simulation: stop lights [Passover II (Jewish)] (code)
W Mar 31 Abuse of Class Hierarchy, Breaking Up the Source File, Javadoc [Passover IV (Jewish)] (working code) (test input)
F Apr 2 -- no class -- [Good Friday (Western Christian)] [Passover VI (Jewish)]
M Apr 5 Breaking up the Source File, README [Drop Deadline]
W Apr 7 Makefiles (a shell archive)
F Apr 9 Makefiles and Javadoc (a shell archive)
M Apr 12 Alternative Simulation Frameworks [preregistration begins] (a shell archive)
W Apr 14 -- no class --
F Apr 16 Wrappers and Information Hiding (and better Makefiles) (a shell archive)
M Apr 19 Subclasses and Information Hiding [a shell archive]
W Apr 21 A Failed Approach to Information Hiding
F Apr 23 Lazyness [Java code]
M Apr 26 Almost Eliminating Circular Dependencies [Java code]
W Apr 28 Eliminating Circular Dependencies, Event-Driven Code [Java code]
F Apr 30 Logical Processes in Event-Driven Code [Holy Friday (Eastern Christian)]
M May 3 Virtual Machines and VM Hierarchies
W May 5 Operating Systems, Networks and Cookies.
F May 7 [the end][last drop]
      Resist Russian Imperialism