calendar Photo by Eric Rothermel on Unsplash

This schedule includes planned topics, exams, and semester breaks. For individual assignment deadlines, please refer to the Canvas site. The semester has two major blocks:

  1. Develop an advanced understanding of object-oriented design, inheritance, event-driven programming, and GUI design. Weeks 1-10
  2. Introduction to efficient algorithms, data structures, sorting, and advanced recursion. Weeks 11-15

Week 1

  • Tue, Jan 17 Software Setup and Course Overview
    • Reading:
      • Review the resources section and ensure that you have attempted to install all required software and obtained all necessary accounts & licenses
  • Fri, Jan 20 Computer Science Basics Review
    • Reading:
      • ds Ch 1

Week 2

  • Tue, Jan 24 Intro Objects I
    • Reading:
      • oop Ch 1
  • Fri, Jan 27 Intro Objects II
    • Reading:
      • oop Ch 2

Week 3

  • Tue, Jan 31 Mental Models
    • Reading:
      • oop Ch 3
  • Fri, Feb 3 Multiple Objects
    • Reading:
      • oop Ch 4

Week 4

  • Tue, Feb 7 Intro to GUIs
    • Reading:
      • oop Ch 5
  • Fri, Feb 10 Intro to GUIs II
    • Reading:
      • oop Ch 5

Week 5

  • Tue, Feb 14 Object-Oriented Pygame
    • Reading:
      • oop Ch 6
  • Fri, Feb 17 GUI Widgets in Pygame
    • Reading:
      • oop Ch 7

Week 6

  • Tue, Feb 21 Exam I
  • Fri, Feb 24 Encapsulation I
    • Reading:
      • oop Ch 8

Week 7

  • Tue, Feb 28 Encapsulation II
    • Reading:
      • oop Ch 8
  • Fri, Mar 3 Polymorphism I
    • Reading:
      • oop Ch 10

Week 8

  • Tue, Mar 7 Polymorphism II
    • Reading:
      • oop Ch 10
  • Fri, Mar 10 Inheritance I
    • Reading:
      • oop Ch 11

Week 9

  • Tue, Mar 14 ***Spring Break No Classes!!
  • Fri, Mar 17 ***Spring Break No Classes!!

Week 10

  • Tue, Mar 21 Inheritance II
    • Reading:
      • oop Ch 11
  • Fri, Mar 24 Memory Management
    • Reading:
      • oop Ch 12

Week 11

  • Tue, Mar 28 Exam 2
  • Fri, Mar 31 Algorithm Analysis
    • Reading:
      • ds Ch 2

Week 12

  • Tue, April 4 GitHub Branches and Basic Data Structures
  • Fri, Apr 7 Finish Data Structures, Start Recursion I
    • Reading:
      • ds Ch 4.1-4.6

Week 13

  • Tue, Apr 11 Recursion II
    • Reading:
      • ds Ch 4.6-end of chapter
  • Fri, Apr 14 Searching
    • Reading:
      • ds Ch 5.1-5.4 skip 5.5

Week 14

  • Tue, Apr 18 Sorting
    • Reading:
      • ds Ch 5.6-end of chapter
  • Fri, Apr 21 Trees, Tree Algorithms
    • Reading:
      • ds Ch 6.1-6.10

Week 15

  • Tue, Apr 25 Tree, Tree Algorithms II
    • Reading:
      • ds 6.11-end of chapter
  • Fri, Apr 28 LAST DAY OF CLASS!!
    • Reading: Graphs, Graph Algorithms I
      • ds 7.1-7.6

Week 16: Final Exams

  • Day: Tue, May 9, 2023
  • Time: 02:30PM-05:00PM