Quick Links:
  
      2024 Winter
  
  
      Schedule
  
  
      CPSC 101 Labs
  
  
      CPSC 101 Project
  
  
    
      Moodle
  
  
    
      Java 10 API
      
  
  
  CPSC 101 —
    Computer Programming II — Winter 2024
  
    course outline
  (printable pdf version
  ).
  
    
    
      - Important Information
 
      - 
        
          Important information will be posted here from time to time.
        
        
          - 2024-03-10
 
- 
  Lab 5 has been posted.
 
- 2024-02-13
 
- 
  The final exam schedule has been posted.  The final exam information
  is 
  | DAte |      Wednesday, 10 April 2024 | 
  | Time |      09:00–12:00 | 
  | Location |  8-164 | 
 
- 2024-02-12
 
- 
  Lab 3 has been posted.
 
- 2024-01-30
 
- 
  Lab 2  pudated slightly.
 
- 2024-01-02
 
- 
  no GNUs are good GNUs.
 
- 2023-11-26
 
- Web-page created.
 
        
       
      - Instructor
 
      - Dr David Casperson
        (contact information).
      
 
      - Text
 
      - Big
            Java: Early Objects
        by Cay Horstman.
        
            6th edition.
        Isbn: 978-1-1190-5644-7.
      
 
      - Rooms and Hours
 
      - 
        Lectures are in
        5-171 when in person.
        Labs are in person, and in 
        8-456/8-457.
        Tutorials are in
        5-174/5-176.
        (Room details).
        (David’s schedule).
      
 
      - Policies
 
      - Course
          policies can be
        found here.
 
      - Handouts
 
      - 
        
 
      - Links
 
     - 
        
          - Old Exam Links
 
          - 
            
              The examinations links below are here purely for
              education purposes.  Any resemblance to
              historical fact or this year's midterms is pure
              propinquity.  
            
             
      
 
      
      - Topics
 
        - 
          from (not necessarily in the order listed) 
          Memory organization and memory diagrams.
          General programming concepts (discussed in Java) including
          an introduction to generic programming, and
          exceptions and exception handling.
          An introduction to object-oriented design and design patterns.
          Object-oriented programming concepts, including:
          inheritance,
          overriding and overloading,
          inner classes, and
          polymorphism.
          Graphics programming (specifically using Swing in Java).
        
       
      -  Grading Scheme
 
            -  
 
            - Course Dates
 
            -  (See also the project 
                  due dates
                ) 
 
                     -  
                
                
                  | Lab Assignments | Weekly. Found
                      here. |  
                  | Team Project | see
                      here. |  
                  | First Class | 
                  2024-01-03                  Wednesday | 
                   
                  | Midterm I | 
                      2024-02-07                      Wednesday | 
                  
                  | Winter Break | 
                      2024-02-20 to 2024-02-23.
                   |  
                  | Midterm II | 
                      2024-03-07                      Wednesday                         | 
                  
                  | Good Friday | 
                      2024-03-29                      Friday
                       | 
                  
                  | Easter Monday | 
                      2024-04-01                      Monday
                       | 
                  
                  | Last Class | 
                      2024-04-09                      Tuesday
                   | 
                  | Final | 
                    
                      
                   | 
              
              
                Other dates can be found on the
                University web-site here.
              
             
            - General
 
            - 
              
                - 
                  Assignments are late if they are not received at the
                  beginning of the lecture at which they are due.
                  See the late policy for further information.
                
 
                - 
                  There will be between 4 and 8 programming assignments, the
                  assignments being given out approximately weekly.
                
 
                - 
                  Discussion of assignment topic is encouraged but all
                  assignments must be done independently.  Copied
                  assignments are considered as “Academic Dishonesty.”
                  Responses to academic dishonesty include assigning a
                  mark of -100% and
                  written notification
                  of the Dean.
                  Again, see
                  the policies link for more details and other policies.
                
 
                - 
                  Tutorial participation is mandatory.
                
 
                - 
                  The team project accounts for 15% of your mark in this course,
                  and your participation in the team project affects the grade of
                  your fellow team-mates.  Team meetings and other team project
                  activities happen outside of scheduled class times.  Please plan
                  accordingly.
                
 
                - 
                  Some Wednesday classes may be swapped with Thursday tutorials.