CSSE220 – Object-Oriented Software Development

Winter 2019 (201920)

Schedule Overview

All assignments are due at 11:55PM on their due dates.
Note that this schedule is initially based on last term's schedule and will be updated as we go along. There may be changes to class activities and HW assignments up until the time of any day's class meetings.

All non-Moodle web pages for the course.

Schedule last updated Mon Feb 11, 2019.

Session quick links:  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Week Session Reading HW Due Topics Resources Programs
1

1

Tue Nov 27

  • Nothing due before the 1st class. Look at Session 2 to see what's due (at 11:55 PM) on the due date (that's after class so you can ask questions in class).
  • Brief course introduction
  • Getting started with Java (printing, defining and calling static methods, declaring variables, if statements)
  • Eclipse and Subclipse (running a program, checking out and committing a project)
  • Variables/types
  • The String class
HW1 TwelveProblems
1

2

Wed Nov 28

  • Big Java, 7.1-7.3, 7.7
  • Loops (for and while)
  • The String class
  • Primitive Types
  • Arrays
  • ArrayLists
  • Enhanced for loop
TwelveProblems  
1

3

Fri Nov 30

  • Big Java, 15.4
  • Maps
  • 2D Arrays
Map and 2D Array Problems  
2

4

Tue Dec 4

  • None
  • Miscellaneous
Team Gradebook  
2

5

Wed Dec 5

  • Chapter 2.1-2.8
  • Object references
  • Object-Oriented Encapsulation
  • Implementing Classes in Java
Team Gradebook  
2

6

Fri Dec 7

  • Big Java Pages 567-569, Special Topics 12.1, 12.2, 12.3 (focus on association, we will not use aggregation/composition in this class)
  • Class diagrams
  • Intro to Object Design
Team Gradebook DesignProblems Pt1
3

7

Tue Dec 11

  • Big Java, Ch. 2.9, 2.10
  • Java Graphics
Scenes  
3

8

Wed Dec 12

  • Continue working on Scenes
  • BEFORE THIS CLASS: Attempt a previous exam's written portion (201910 is a good one) for review. The old exams can be found here: Exam review.
  • Give yourself 50 minutes to complete the written portion. If you struggle, speak with your professor and/or bring questions to this class period.
  • Bring your completed written exam to class and ask any questions you may have
  • Unit Testing
  • Console input
  • Exam 1 Written Portion Review
Scenes  
3

9

Fri Dec 14

  • Big Java, review Ch. 2 - 7
  • Continue working on Scenes
  • BEFORE THIS CLASS: Attempt a previous exam's programming portion (201510 is a good one) for review. The old exams can be found here: Exam review.
  • Give yourself 105 minutes to complete the programming portion. If you struggle, speak with your professor and/or bring questions to this class period.
    Exam 1 Written Portion
    In Class - 1st Hour Only
  • Exam Review - Programming Portion
Scenes  
4

10

Tue Dec 18

  • Exam 1 Programming Portion
    In class
ImplementingDesign1  
4

11

Wed Dec 19

  • Big Java 3.1.3
  • Encapsulation
ImplementingDesign1 DesignProblems Pt2
4

12

Fri Dec 21

  • Big Java, Ch. 8
  • Cohesion and Coupling
  • Scope
ImplementingDesign2 DesignProblems Pt3
5

13

Tue Jan 8

  • Big Java, 13.1 - 13.2
  • Recursion
  • Recursive helper methods
   
5

14

Wed Jan 9

  • Big Java, 13.3 - 13.5 (13.6 is optional)
  • Big Java, 10.1 - 10.3
  • Interfaces
Recursion Practice  
5

15

Fri Jan 11

  • Big Java, 10.7, 10.10
  • Swing containers, Layout Managers
  • Event-based programming
  • Listeners, callbacks, and inner classes
  • Buttons and other Swing objects
Linear Lights Out  
6

16

Tue Jan 15

  • None
  • More Recursion
  • More Interfaces
   
6

17

Wed Jan 16

  • Big Java, 9.1 - 9.3
  • Be sure to read Special Topic 10.1 Abstract Classes on p. 437
  • Skim the remainder of UML Class Diagrams intro
  • Inheritance
  • Polymorphism
  • Access control
BallWorlds  
6

18

Fri Jan 18

  • Big Java, 9.4, 9.5 Skip anything about clone().
  • Object
  • Polymorphism
BallWorlds  
7

19

Tue Jan 22

  • Big Java, Ch. 11, 12,1-2
  • Object-oriented design
  • File I/O
  • Exception handling
   
7

20

Wed Jan 23

  • All previously noted chapters/sections (review)
  • BEFORE THIS CLASS: Attempt a previous exam's programming portion (201520 is a good one) for review. The old exams can be found here: Exam review.
  • Give yourself 105 minutes to complete the programming portion. If you struggle, speak with your professor and/or bring questions to this class period.
    Exam 2 Written Portion
    In Class - 1st Hour Only
  • Exam Review - Programming Portion
   
7

21

Fri Jan 25

  • Exam 2 Programming Portion
    In class
Arcade Game - Cycle 0  
8

22

Tue Jan 29

  • None
  • Timers for a game loop
  • Workday and feedback on design
    Arcade Game - Cycle 1  
    8

    23

    Wed Jan 30

    • None
    • Team worktime for project
      Arcade Game - Cycle 1  
      8

      24

      Fri Feb 1

      • Big Java, 15.1 - 15.2, 16.1
      • Intro. to linked lists
      • Linked list implementation
      Arcade Game - Cycle 1 SinglyLinkedList
      9

      25

      Tue Feb 5

      • None
      • Linked lists part 2
      • Linked list worktime
      Arcade Game - Cycle 2  
      9

      26

      Wed Feb 6

      • None
      • Team worktime for project
        Arcade Game - Cycle 2 Arcade Game - Cycle 3
        9

        27

        Fri Feb 8

        • Sorting
        • Algorithm analysis
        Arcade Game - Cycle 3 Arcade Game - Cycle 4
        10

        28

        Tue Feb 12

        • Big Java 14.4 - 14.8
        • Merge sort
        • More on Big O
        • Comparable and Comparator
        Arcade Game - Cycle 4  
        10

        29

        Wed Feb 13

        • None
        • Course evaluations
        • ArcadeGame work time
        Arcade Game - Cycle 4  
        10

        30

        Fri Feb 15

        • Big Java, Ch. 18 (skim)