Course web page: Introduction to problem solving with applications James Tam Return to the course web page

CPSC 233: Tutorial Teaching Schedule

Reminder: example programs that I provide to Teaching Assistants can be found in UNIX under: /home/233/tutorials [Shortcut link]

Week

Topics covered

Sept 6 - 12

No tutorials

Sept 13 - 19

First tutorial (Monday or Tuesday):
  • Quickie intro into creating a Java program on the CPSC network
  • Input/output
  • Variables
  • Branches
  • Loops

Second tutorial (Wednesday or Thursday):

  • Review: basic UNIX command line commands [Reference: Common Unix commands]
  • Review: using a simple UNIX text editor [Reference: useful Emacs commands]
  • Submitting assignments using D2L: [UC-IT help link]
  •  

    Sept 20 - 26

    First tutorial (Monday or Tuesday):

    Second tutorial (Wednesday or Thursday):

    • How to work from home using a remote login program e.g. Putty
    • Transferring work from your CPSC to your personal computer (e.g. for backups or printing)
    • Switch statement: using and misusing the construct
    • 1D arrays in Java

     

    Sept 27  - Oct  3

    • Detailed discussion of requirements for A1 (only a quick overview will be provided in lecture)
    • Debugging techniques
    • Creating and using a text-based user-interface class
    • A1 due Oct 2

     

    Oct 4 - 10

    (You can ask questions about A2 but because it should be pretty straight forward the TA's won't explicitly go over the requirements).

    First tutorial (Monday or Tuesday):

    • Going from program requirements to choosing classes (with exercise): finding candidate classes via 'nouns', determining relationships, UML class diagrams

    Second tutorial (Wednesday or Thursday):

    • Parameter passing
    • Wrapper classes
    • Arrays of references
    • 2D arrays
    • Discussion of requirements for mini-A3
    • A2 due Oct 9

    Oct 11 - 17

    First tutorial (Monday, Tuesday)
    • Monday: Thanksgiving holiday, no classes or CT runs today
    • Tuesday:  'open tutorial'. TAs will be available for help and to answer questions but no new material will be taught (although they may cover material that they missed covering in the previous week. Any student from 233 can ask for help during an open tutorial (you don't have to be registered in that section). Students can also work on their assignment in the lab.

    Second tutorial (Wednesday, Thursday)

    • Finding the methods and attributes of classes (continued from the previous week)

     

    Oct 18 - 24

    First tutorial (Monday, Tuesday)
    • Discussion of requirements for A3

    Second tutorial (Wednesday, Thursday)

    • Static attributes and methods
    • Debugging flags
    • Review questions

    Oct 25 - 31

    First tutorial (Monday, Tuesday)
    • Open tutorial: TA's won't be teaching new material but they will be available for help (students can go to any 233 tutorial for help and not just the one that they are registered in).

    Second tutorial (Wednesday, Thursday)

    • Introducing inheritance: extends, overriding/polymorphism
    • ATM design exercise employing an inheritance hierarchy

    A3 due Oct 27

     

    Nov 1 - 7

    First tutorial (Monday, Tuesday)

    • Description of requirements for Assignment 4
    • Midterms will be returned at the end of the tutorial

    Second tutorial (Wednesday, Thursday)

    • Casting and inheritance
    • The instaneof operator
    • Select midterm questions

     

     

     

    Nov 8 - 14

    First tutorial (Monday, Tuesday)
    • Open tutorial: TA's won't be teaching new material but they will be available for help (students can go to any 233 tutorial for help and not just the one that they are registered in).

    Second tutorial (Wednesday or Thursday)

    • Reading Days: November 11 - 14. No lectures, tutorials or labs (for this course it refers to CT time) held during these days.

    A4 due Nov 10

     

    Nov 15 - 21

    • Discussion of requirements for A5
    • Graphical user interfaces:
    • Example 1: JButton (specifically identifying controls via 'actionCommand')
    • Example 2: controls affecting other controls (MyFrame is a Button listener), JTextField (single line input control)
      Graphical user interfaces:
    • Example 3: Swing components with graphical icons (ImageIcon), changing visual attributes of GUI controls, the GridBagConstraints layout manager, introducing Java threads (pause a program)
      Example 4: JTextArea &
      JScrollPane, GridBagLayout & GridBagConstraints, adding components to GridBag with a generic addWidget method.

    Nov 22 - 28

    First tutorial (Monday, Tuesday)
    • File input and output, exceptions

    Second tutorial (Wednesday or Thursday)

    • Open tutorial: TA's won't be teaching new material but they will be available for help (students can go to any 233 tutorial for help and not just the one that they are registered in).

    A5 due Nov 27

     

    Nov 29 - Dec 5

    • Discussion of A6
    • Linked lists
    • Recursion

    Dec 6 - 12

    • (Tutorials will likely be 'open')
    • A6 due Dec 8