VIP: Zoom is set up so that you can only join when authenticated from a colorado.edu account.
To join the lectures synchronously, use this Zoom Meeting https://cuboulder.zoom.us/j/96158358156
Date | Topic | Readings due Readings in italics are optional |
Deliverables |
---|---|---|---|
Fri, Jan 15 | Introductions: Staff, Students, Expectations | Signup on Piazza, and for those attending live Register a free iClicker Account | |
Mon, Jan 18 | Martin Luther King Day (no class) | Be grateful for leaders like MLK who put serving others ahead of their personal interests. Listen to his famous "I have a dream" speech. | |
Wed, Jan 20 | Intro to OOAD course | Quiz #1 (see Canvas) | |
Fri, Jan 22 | Syllabus and Projects | Homework 1 (see Canvas) | |
Mon, Jan 25 | OO Paradigm | Wikipedia article on OOP | |
Wed, Jan 27 | Version Control, Git Demo | read chapters 2, 4, and 8 from this book | |
Fri, Jan 29 | Design Fest: CRC | CRC Paper | |
Mon, Feb 1 | OO Fundamentals | Composition over Inheritance, then Has-a, then Is-a | |
Wed, Feb 3 | Intro to Java | From Imperative To Functional Programming through Refactoring | Quiz 2 (in Canvas) |
Fri, Feb 5 | Grad students pitch project ideas | Battleship Milestone 1 (see Canvas, due at 2:59pm), Tracks 2 & 3 Project proposal (due at 12pm) | |
Mon, Feb 8 | Project Clarifications and Class Candid Conversations | ||
Wed, Feb 10 | UML | Wikipedia article on UML, then UML Class Diagram, then UML Sequence Diagram, then Use Case Diagram | |
Fri, Feb 12 | TDD | JUnit Test Infected: Programmers Love Writing Tests | Deadline for Grad Students to form Teams for the Grad Project. AND Quiz 3 (in Canvas). |
Mon, Feb 15 | UML - part 2 | ||
Wed, Feb 17 | No Class - Wellness Day | ||
Fri, Feb 19 | Working Together: Principles and Practices (by Alan Mulally - former CEO at Boeing and Ford) | Battleship Game: Milestone 2 (was pushed to Sun, Feb 21). | |
Mon, Feb 22 | eXtreme Programming (XP) | eXtreme Programming AND XP Practices | |
Wed, Feb 24 | Intro to Design Patterns | Chapter 1: Intro to Design Patterns from the Texbook | Quiz #5 |
Fri, Feb 26 | Grad students present their Project Topics | Homework 2 - UML Diagrams. Grad Project Milestone 1. | |
Mon, Mar 1 | Observer design pattern | Chapter 2 (Observer) from the Texbook | |
Wed, Mar 3 | Decorator design pattern | Chapter 3 (Decorator) from the Texbook | Quiz #6 |
Fri, Mar 5 (no class, read lecture slides) | Factory design pattern | Chapter 4 (Factory) from the Textbook | Battleship Game: Milestone 3. |
Mon, Mar 8 | Singleton design pattern | Chapter 5 (Singleton) from the Texbook | |
Wed, Mar 10 | Midterm (available for 24 hours starting on Wed at 3pm). | ||
Fri, Mar 12 | Interview with Rebecca Wirfs-Brock | ||
Mon, Mar 15 | Class Canceled - Campus is Closed | Everyone stay safe through the blizzard | |
Wed, Mar 17 | Interview with Design Patterns legend, Ralph Johnson | ||
Fri, Mar 19 | Command Design Pattern | Chapter 6 (Command) from the Texbook | Notice that Battleship Game: Milestone 4 - pushed to Sunday, March 21 |
Mon, Mar 22 | Project Clinics | Bring your project to get feedback from the staff | |
Wed, Mar 24 | Project Clinics | ||
Fri, Mar 26 | Inspirations for Career Paths | ||
Mon, Mar 29 | OO Design Pattern Principles | Read on each of the S.O.L.I.D. principles | |
Wed, Mar 31 | Refactoring | Chapter 24 from Steve McConnell's Code Complete, 2nd Edition (access the ebook for free from CU Libraries) | |
Fri, Apr 2 | Grad student Milestone 2 Presentations | Grad Project Milestone 2 | |
Mon, Apr 5 | Overview of Refactoring Research | Code Smells Blog | Undergrad Milestone 5 |
Wed, Apr 7 | Eliminating Code Clones with Refactoring | Clone Refactoring with Lambda Expressions (ICSE'17) | |
Fri, Apr 9 | Part 2: Demo on Eliminating Duplication through Refactoring | ||
Mon, Apr 12 | Composite and Visitor Design Patterns | Composite AND Visitor | |
Wed, Apr 14 | Template Method, Facade, Adapter Design Patterns | Template Method AND Facade AND Adapter | |
Fri, Apr 16 | Project clinic for Grad student Milestone 3 results. | Undergrad Milestone 6 was merged with Final Project Submission and is due on Sun, April 25th. | |
Mon, Apr 19 | Architectural Patterns | Software Architecture, Architectural Patterns, 3-Tier Architecture, MVC | Quiz 9 (in Canvas) |
Wed, Apr 21 | Course Review, about Final Exam | ||
Fri, Apr 23 | No class - prepare the project hand-in | Teams use the class time to work on final project hand-in | |
Sun, April 25 | Undergrad Final Project Submission and Documentation (in Canvas) | ||
Mon, April 26 | Grad student Final Project Presentations #1 | ||
Wed, April 28 | Grad student Final Project Presentations #2 | ||
Wed, May 5 at 1:30pm | Final Exam |