====== Schedule ====== ===== Lecture times ===== * Tuesdays and Thursdays, 18:00 - 19:30, CB 121 ===== Lab session ===== * Tuesdays and Thursdays (back-up), 19:30-21:00, LAS 1006 ===== Weekly schedule ===== == The following schedule information is tentative and will be updated throughout the term to reflect the actual progress of our particular course. Lecture notes and code examples will be posted incrementally as material is covered in class. ==
WEEK  DATES  Lectures Lab Reading
01 May
7 & 9
Topics: Introduction; Abstraction
Example code: Hello.java
Getting an account
Guided Tour
Assigned eCheck: 01A (due 17 May)
Chapter 1
02 May
14 & 16
Topics: Delegation, application development & software engineering
Example code: MkChange.java
Working from home
Assigned eCheck: 02A (due 20 May)
Chapter 2
03 May
21 & 23
Topics: Using classes & APIs; The object abstraction and usage
Example code: Circumference.java; MkChange2.java
Assigned eCheck: 03B (due 27 May) Chapters 3 & 4
04 May
28 & 30
Topics: The object abstraction and usage (continued); Control structures Part 1 - Selection
Example code: LottoNumbers.java; MkChange3.java
Assigned eCheck: 04A (due 3 June) Chapters 4 & 5
05 June
4 & 6
Topics: Control structures Part 2 - Iteration
Example code: SquaresTbl.java; SquaresInteractive.java; MultTbl.java; MarksHisto.java; DrawTriangle.java; SquaresWaves.java
Assigned eCheck: 05B (due 10 June) Chapter 5
06 June
11 & 13
Topics: Control structures Part 2 - Iteration (continued); Strings
Example code: ShortenDate.java; ReplaceAll.java
Assigned eCheck: 06B (due 17 June) Chapter 6
07 June
18 & 20
Topics: Strings (continued); Software development
Example code: CapWord.java; MarksAnalysis.java; Crypt.java
Lab test 1 administered during regular lab time Chapter 7
08 June
25 & 27
Topics: Aggregation
Example code: InvestmentTest.java; PortfolioTest.java; PortfolioTest2.java; PortfolioDeepCopy.java;
Written midterm test administered in class on Thursday
Assigned eCheck: 08D (due 5 July) Chapter 8
09 July
2 & 4
Topics: Aggregation (continued); Inheritance
Example code: CardTest.java; GlobalCreditEg.java
Assigned eCheck: 09C (due 12 July) Chapter 9
10 July
9 & 11
Topics: Inheritance (continued); Collections
Example code: DetectDuplicates.java; WordFrequency.java
Assigned eCheck: 10B (due 19 July) Chapter 10
11 July
16 & 18
Topics: Collections (continued); Exception handling
Example code: EHegA.java; EHegB.java; EHegC1.java
Assigned eCheck: 11D (due 26 July) Chapter 11
12 July
23 & 25
Topics: Exception handling (continued); Multiclass applications
Example code: FoodSim.java
Lab test 2 administered during regular lab time Chapter 12
13 July 30 &
August 1
Topics: Multiclass applications (continued); Review No lab Review entire textbook