CPSC 233: Fall 2004

 

Overall term grades

Lecture Information

 

Lecture 01

Day/Time MWF 10:00-10:50
Location ST133

 

 

Tutorial (formerly referred to as labs) Information

Labs for L01 Day/Time Location Lab instructor Lab web page Email
T01 MW 9:00 - 9:50 MS205 AQ DUONG   aduong@cpsc.ucalgary.ca
T02 MW 12:00- 12:50 ENA233 AQ DUONG   aduong@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 Introduction to classes and objects [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 More advanced Object-Oriented and Java concepts [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)
4 Advanced relations [Acrobat] [PowerPoint]
  • Inheritance
  • Interfaces vs. classes
  • Abstract classes
Chapter 7 (pp. 307 - 308),  Chapter 9 ( pp. 363 - 373), Chapter 11 (pp. 429 - 451),
5 Packages [Acrobat] [PowerPoint] Chapter 7 (pp. 310 - 317)
6 Object-Oriented design and testing [Acrobat] [Powerpoint] Chapter 7 (pp. 282 - 295), Chapter 8 (pp. 330- 356) : These chapters are loosely related to the lecture topics)
7 Exception handling [Acrobat] [PowerPoint] Chapter 14
8 File input and output [Acrobat] [PowerPoint] Chapter 15 (pp. 581 - 599)
9 Introduction to GUI design [Acrobat] [PowerPoint] A different version of Java GUI's is covered in Chapter 10 & 12)
10 Concurrent programming with Java threads (If there is sufficient time) [Acrobat] [PowerPoint] Chapter 21 (pp. 809 - 826)
11 Additional topics (If there is sufficient time) [Acrobat] [PowerPoint]  

 

Assignments and exams

  General assignment specifications
  Assignment 1 (Due Friday September 24, worth 2% of overall grade): Writing a simple Java program
  Assignment 2 (Due Friday October 1, worth 2% of overall grade): Introduction to classes and objects
  Assignment 3 (Due Friday October 15, worth 5% of overall grade): Dynamic memory allocation through arrays of references
  Assignment 4 (Due Monday November 1, worth 7% of overall grade): Writing programs with multiple classes
  In class midterm examination (Friday October 29)
  Assignment 5 (Due Friday November 26, worth 8% of overall grade): Inheritance and exceptions
  Assignment 6 (Due Friday December 10, worth 6% of overall grade): Designing a simple graphical-user interface, file input and output
  Registrar scheduled final exam