Week 1
[Lecture 1] on 16-Jan (Tue)
*
Ability Test
*
The Lab01-Q1 program:
Q1_Explain.pdf
*
Lab01 - Page 5: Drawing of variables and objects
*
Topic 00 Course Introduction
*
Topic 01 Introduction to Java
*
Lec01_Ex Lecture Exercise: Common programming problems, Cast, Solution of Lec 1 Ability Test, Recursion (Fibonacci)
* +
Debugger Demo
[Lab 01] on 19-Jan (Fri)
* Lab 01: Hands-on and Briefing
* Lab01-Q1: Compile and run the Day program, briefly taking a look at Main.java.
* Lab01-Q2: Make it work and finish submission to PASS (100%) !
* Lab01-Q3 to Q6: As homework
* + Demo of Redo for Lab01-Q1
Week 2
[Lecture 2] on 23-Jan (Tue)
* Lec02 Ex Q-3: About variables and objects in the memory; draw them !
* Lec02 Ex Q4 (Lab01Q5: Previous Day)
* Lec02 Ex Q5 (Lab01Q6 Java Version A)
* Lec02 Ex Q6,7 About PASS
* Topic 02 Basic Progr. Structures
[Lab 02] on 26-Jan (Fri)
* Lab02-Q1: Finish submission to PASS (100%) !
* Lab02-Q2: Finish submission to PASS (100%) !
* Lab02-Q3 to Q6: As homework
Week 3
[Lecture 3] on 30-Jan (Tue)
* Lec03 Lecture Exercise Q1-5
* Topic 03 - Part only Objects and Classes
* Lec03 Lecture Exercise Q6-?
* Lec03 Lecture Exercise Q11 (Lab2Q3 Scanner and File objects)
* Lec03 Lecture Exercise Q12 (Lab2Q4 Solution)
* Lec03 Lecture Exercise Q13 (Lab1Q6B Solution)
[Lab 03] on 2-Feb (Fri)
* Lab03-Q1: Finish submission to PASS (100%) !
* Lab03-Q2: Finish submission to PASS (100%) !
* Lab03-Q3 to Q4: As homework
Week 4
[Lecture 4] on 6-Feb (Tue)
* Mock for Quiz
* Review mock answers
* Information about the Quiz in week 5
* [Lab04.pdf] Q0-Q1
* Lec04 Lecture Exercise Q1-2(OO), Q3(Lab2Q6)
* [Topic 03] Teaching
[Lab 04] 16-Feb (Fri)
* Lab04 Q2-6: Finish submission to PASS (100%) !
* Lab04 Q7-11: As homework. Helena will explain during lectures before deadlines.
Week 5
[Lecture 5] on 20-Feb (Tue)
* Quiz (5%)
* About Quiz Redo
* Lab04 Q5-11
* [Topic 03] Teaching
[Lab 05] on 23-Feb (Fri)
* Lab05 Q0-Q2 Finish Q0 on Canvas and Q2 on PASS (100%) !
* Lab05 Q3-7 will be explained during the coming lecture
Week 6
[Lecture 6] on 27-Feb (Tue)
* Quiz - review
* Lec06 exercise Q11 (Summarize Lab5 Q2, Q5)
* Lab05 Review Q2, Explain Q3-5
* Lab05 Briefing for Q6-7
* [Topic 04] - Teaching
* Lec06 exercise Q1, 2
[Lab 6] on 1-Mar (Fri)
* Lab06.pdf page 1: State-pattern and OCP - an introductory example
* Lab06 Q1-2
* Lab06 Q3-5 as homework (Q3-5 will be discussed during the lecture before deadline)
Week 7
[Lecture 7] on 5-Mar (Tue)
* [Topic 04] - Teaching (continued)
* Lec06 exercise Q3-10
* Lab05 Q7 Drawing (Answer already posted on course web)
* Lab06 Q3 and Progress Summary
* Lec07 exercise Q1-3 (Singleton for Lab06 Q3, Explain Lab06 Q4-5)
[Lab 7] on 8-Mar (Fri)
* Warm up exercise: null and static
* Lab07 Page 1 Review
* Lab07.pdf Q1-4
* Remaining will be covered during lecture.
Week 8
[Lecture 8] on 12-Mar (Tue)
* [Topic 04] - Teaching (last part)
* Lec07 exercise Q4-5 (Heap and Stk, Java Exceptions; GC)
* Lab07 Q5-6, Progress check, Q7 (as Lec08 Ex Q5)
* Lec08 exercise Q1-4
* [Topic 05] - First part
[Lab 8] on 15-Mar (Fri)
* Lab 8 Q1: Finish submission to PASS (100%) !
* Lab 8 Q2: Demo
* Lab 8 Q2-6: As homework.
Helena will explain Q5-6 during the lecture before deadlines.
Week 9
[Lecture 9] on 19-Mar (Tue)
* [Topic 05] - Remaining contents
* [Topic 06] - Exception Handling (for Assignment)
* Lab 8 Page 6 - Progress check
* Lecture Exercise Lec09 Q4 Lab8 Q5 Fire (for Assignment)
* Lecture Exercise Lec09 Q1 Exercise-IReadWrite-IGrade
* Lecture Exercise Lec09 Q2 CompareTo
* Lecture Exercise Lec09 Q3 O-O Approach (for Assignment)
* Lecture Exercise Lec09 Q5 Exception Handling (for Assignment)
[Lab 9] on 22-Mar (Fri)
* Lab09.pdf Intro (All Lab09 Q1-2 are for the assignment)
* Lab09 Q1: Finish submission to PASS (100%) !
* Lab09 Q2: As homework; video available.
Week 10
[Lecture 10] on 26-Mar (Tue)
* Lecture Exercise Lec09 Q1 Exercise-IReadWrite-IGrade
Another example:
course web => Given Code => 05 Programs => Topic05x
* Lecture Exercise Lec09 Q6 Inner classes
* [Topic 06] - Exception Handling (remaining contents)
* Lecture Exercise Lec10 Q1 Fixing SystemDate
* Lecture Exercise Lec10 Q2 Exception Handling -- summary
* [Topic 07] - Generics
[Lab 10] on 29-Mar (Fri)
* Lab10 Q2: MC Part A
* Lab10 Q1: Coding (for Assignment)
Week 11
[Lecture 11] on 2-Apr (Tue)
* Lab10 Q2: MC Parts B-C
* [Topic08] Collections
* Lecture Exercise Lec11 (Include Mock of Midterm Q1, Q2)
[Lab 11] on 5-Apr (Fri)
* Lab11.pdf Questions (a) and (b)
* Please finish all part a and b by the deadlines
Week 12
[Lecture 12] on 9-Apr (Tue)
* Midterm
* Lab12 : Introduction of Q1-Q3 (small questions)
We will review Q1-Q3 briefly in tutorials
[Lab 12] on 12-Apr (Fri)
* Review Lab12 Q1-Q3 (We already introduced Q1-Q3 during the lecture)
* Go through Lab12 Q4
Week 13
[Lecture 13] on 16-Apr (Tue)
* Lecture Exercise Lec13
* [Topic09] OOP Review and more
* Review the Midterm questions
* Preparation for the exam
[Lab 13] on 19-Apr (Fri)
Lab 13: Functional programming
Week ___
[Lecture ___] on ____ (Tue)
* _________
* __________
[Lab ___] on ________ (Fri)
* Lab___ Q____: Finish submission to PASS (100%) !
* Lab___ Q____: As homework. Helena will explain during lectures before deadlines.