CPSC 233: Winter 2004

 

Overall term grades

 

Lecture Information

 

Lecture 02

Lecture 03

Lecture 04
Semester Winter Winter Winter
Day / Time MWF 10:00 - 10:50 MWF 14:00 - 14:50 MWF 10:00 - 10:50
Location ICT 121 ICT 122 ICT 121

 

 

Lab Information

Labs for Lecture 02     Lab instructor Office Lab web page Email
B04 MW 9:00 - 9:50 SS 6 AA WILLIAMS   http://pages.cpsc.ucalgary.ca/~awilliam/233.html awilliam@cpsc.ucalgary.ca
B06 MW 12:00- 12:50 MS 205 JM JOEVENAZZO   www.cpsc.ucalgary.ca/~joevenaj/ joevenaj@cpsc.ucalgary.ca
B07 TR 10:00 - 10:50 MS 205 M MCINTYRE   http://cpsc.ucalgary.ca/~mcintyrm/teaching/cpsc233w04/ mcintyrm@cpsc.ucalgary.ca
B08 TR 14:00 - 14:50 TRB 102 JJ CHERLIN     cherlin@cpsc.ucalgary.ca
B09 TR 16:00 - 16:50 MS 205 AA WILLIAMS   http://pages.cpsc.ucalgary.ca/~awilliam/233.html awilliam@cpsc.ucalgary.ca
Labs for Lecture 03     Lab instructor Office Lab web page Email
B10 MW 16:00 - 16:50 MS 205 N MINHAZ     minhaz99@yahoo.com
B11 MW 15:00 - 15:50 ST 63 FB BALAS   http://www.cpsc.ucalgary.ca/~balas fbalas@ucalgary.ca
B12 MW 16:00 - 16:50 MS 527 FB BALAS   http://www.cpsc.ucalgary.ca/~balas fbalas@ucalgary.ca
B13 TR 11:00 - 11:50 ED 276 M MCINTYRE   http://cpsc.ucalgary.ca/~mcintyrm/teaching/cpsc233w04/ mcintyrm@cpsc.ucalgary.ca
B14 TR 15:00 - 15:50 ST 55 JAH HAMDAN     hamdanj@cpsc.ucalgary.ca
B15 TR 16:00 - 16:50 ST 128 JAH HAMDAN     hamdanj@cpsc.ucalgary.ca
Lab for Lecture 04     Lab instructor Office Lab web page Email
B05 MW 11:00 - 11:50 MS 205 JM JOEVENAZZO   www.cpsc.ucalgary.ca/~joevenaj/ joevenaj@cpsc.ucalgary.ca

 

Course Outline and Notes

No. Topics Related text book chapters
1 Introduction: [Acrobat] [PowerPoint]
  • Course administration
  • Java overview
  • Pascal to Java transition

Working from home: ssh

Chapter 1, 5, 6
2 Classes and objects, Part I [Acrobat] [PowerPoint]:
  • Attributes and methods
  • Creating new classes
  • Dynamic memory allocation and automatic garbage collection
  • Encapsulation and information hiding
  • Constructors
  • Shadowing
  • Arrays
 
Chapter 2, 3, Section 13.4 - 13.7
3 Classes and objects, Part II [Acrobat] [PowerPoint]:
  • More on Java methods
  • Relations between classes: Association, Aggregation, Multiplicity
  • Issues associated with references
  • The static keyword
  • Classes and state
  • Debugging code
Chapter 2, 3, Chapter 7 (pp. 289 - 292, 299 - 307)
5 Classes and objects, Part III [Acrobat] [PowerPoint]:
  • Relationships between classes: Inheritance
  • Access modifiers: Public, private, protected
  • Interfaces: Types Vs. Classes
  • Abstract classes
  • Packages
  • Object-Oriented design & testing
Chapter 7 (pp. 307 - 308, 310 - 317), Chapter 9 ( pp. 363 - 373), Chapter 10 (pp. 422 - 423), Chapter 11 (pp. 429 - 449, The final modifier 450- 451), Chapter 11 (p. 431, Abstract classes pp. 449 - 450)
6 Exception handling [Acrobat] [PowerPoint] Chapter 14
7 File input and output [Acrobat] [PowerPoint] Chapter 15 (pp. 581 - 599)
8 Introduction to GUI design [Acrobat] [PowerPoint] A different version of Java GUI's is covered in Chapter 10 & 12)
9 Concurrent programming with Java threads (If there is sufficient time) [Acrobat] [PowerPoint] Chapter 21 (pp. 809 - 826)
10 Additional topics (If there is sufficient time) [Acrobat] [PowerPoint]  

 

Assignments and exams

    General assignment specifications
    Assignment 1 (Due Wednesday January 28, worth 2% of overall grade): Writing a simple Java program
    Assignment 2 (Due Monday February 2, worth 2% of overall grade): Introduction to classes
    Assignment 3 (Due Friday February 13, worth 5% of overall grade): Dynamic memory allocation through arrays of references
    Assignment 4 (Due Monday March 1, worth 7% of overall grade): Writing programs with multiple classes
    In class midterm examination (Friday March 5)
    Assignment 5 (Due Friday March 26, worth 8% of overall grade): Inheritance and exceptions
    Assignment 6 (Due Friday April 16, worth 6% of overall grade): Designing a simple graphical-user interface, file input and output
    A Registrar scheduled final exam: Click here for more information