Syllabus | Academic Calendar | Helena | Canvas | | PASS demo

Class Progress in PASS (Refresh)          
Lab01Q2: 121 Q5: 116 Q6A: 111 Q6B: 110 
Lab02 Q1: 119 Q2: 117 Q3: 115 Q4: 110 Q5a: 109 Q5b: 107 Q6 (Optional): 45 
Lab03 Q1: 119 Q2: 116 Q3: 114 Q4: 101 
Lab04 Q2: 117 Q3: 116 Q4: 116 Q5: 116 Q6: 116 Q7: 116 Q8:111 Q9:109 Q10/Op:57Q11/Op:51
[Lab05-09 Lab hosts' work not counted]
Lab05 Q2: 92 Q5: 87 Q6: 80 
Lab06 Q2: 96 Q3: 95 Q4: 96 Q5: 90 
Lab07 Q7: 89 
Lab08 Q1: 95 Q2: 95 Q3: 94 Q4: 93 Q5: 91 Q6: 91 
Lab09 Q1: 94 Q2: 90 Q3: 89 
Lab10 Q1: 110 
Lab11 Q2: 104 Q3: 85 
[ Asg ] Phase1: 14 Phase2: 6 Phase3: 0 
(Refreshed 19-11-17 21:33:09  last finished: 19-11-17 21:16:14, see all)
Weekly Schedule and Class Progress:
Week Lecture Topics
Lab files Weekly Progress Assessments#3
'optional' = 'target at good grades'
Wk 01

Events/make-up schedules - here

 

[Topic 00] Course Introduction

- CS2312_Intro.pdf (coming soon!)

- CS2312_Intro.pdf

- CS2312 and other CS Courses

 

[Topic 01] Introduction to Java

- Topic01.pdf , Given Code

- Lec01_Ex.pdf, Answers (coming soon!)

- Lec01_Ex.pdf , Handwriting

Lab01.pdf Given files

Q1-2 A Java class - Day Q1_Explain.pdf
Q3 Programming Graphics mode
Q4 OO sample Library Program
Q5 Day.previous
Q6 OO Programming from C++ to Java
C++ Problem Explained.pdf

For dangerous students:
   Create Main.java and Day.java
       all from the beginning on your own
       (type or copy bit by bit from full code)
    As soon as possible!
    (Ask me questions whenever needed)

Lab01 Q1: Online ex. Due Sep11 3pm

Lab01 Q2: Submit to Due Sep11 3pm

Lab01 Q3,4: Online ex. Due Sep11 3pm

Lab01 Q5: Submit to Due Sep18 3pm

Lab01 Q6 (Java version A):
  Submit to Due Sept18 3pm

Lab01 Q6 (Java version B):
  Submit to Due Sep25 3pm

Wk 02-
3

[Topic 02] Basic ProgrammingStructures
[Core Java Chp03]

- Topic02.pdf , Given Code

- Lec02_Ex.pdf , Handwriting

Lab02.pdf (Will be available on Wed evening)  
, Given files

Q1 Fixing a program (2D Arr)
Q2 Multiplication table
Q3-4 Max r/c sums (File, 2D Arr) Q3Q4 Ans
Q5 Attendance Checking (201617A Quiz 1)
Q6 Multiplication table framed


Lab02 Q1-3: Submit to Due Sep18 3pm

Lab02 Q4: Submit to Due Sep18 3pm

Lab02 Q5a, Q5b: Submit to Due Sep25 3pm

Lab02 Q6: Submit to (Optional)

Wk 03-
4

[Topic 03] Objects and Classes
[Core Java Chp04]

- Topic03.pdf

- Lec03_Ex.pdf , Handwriting

Quiz 1: First 40 minutes of Wk04 lecture
   Coverage: labs+lectures up to week 3
   Focus: Lab and Lecture Exercises.
    knowing the terms, coding design+skill
   Preparation should involve:
    Re-do exercises, without hint/guideline
   Question styles:

    Please refer to past paper:
       Q1 coding, Q2 coding+drawing.
   Bring Pencils + erasers!!

Quiz 1: The paper
(Redo deadline : Week 5 Monday;
   submit .java and picture by email;
   What is Quiz Redo )

For dangerous students:
   Learn from Helena / Helper and then
   REDO all programs on your own A.S.A.P. !
   Target: 100% digestion!

Quiz 1 Results:

   No. of students: 116
   Avg: 26.9 (out of 40 marks; last yr 26.7)
   Very Dangerous (0-14.9): 18 students
   Need Catch-up (15-19.9): 11 students
   Not safe (20-24.9): 11 students
   Not safe (25-29.9): 18 students
   OK La (30-34.9 marks): 22 students
   Good (35-38.9 marks): 25 students
   V Good: 39 x 4, 39.9 x 1, 40 x 6 students

The paper and model answers

Lab03.pdf , (Will be available on next Monday 9pm)  
Given files

Q1-2 Array of Day Objects, overload valid
Lab03_Q1_Drawing
Q3 Allocation of tasks to Teams
Lab03_Q3_Explain_newLine
Q4 Like Q3 but variable counts


Lab04.pdf, (Will be posted on Friday 5pm)  
Given files

Simple Recursion (Q1-11)
- A quick track to improve coding skill
- Lab04_guideQ2Q3Q4.pdf
- Q9,10,11(HandWriting).pdf

Lab03 Q1-2: Submit to Due Sep25 3pm

Lab03 Q3-4: Submit to Due Sep25 3pm

NOTE: Redo Q3 carefully before Q4
   until every step is clear
   don't look at hints/guidelines.

    As soon as possible!


Lab04 Q2-9: Submit to Due Oct02 3pm

Lab04 Q10-11: Submit to (Optional)

Wk 05-
06

[Topic 04] Inheritance
[Core Java Chp05]

- Topic04.pdf , Given Code

- Lec05_Ex.pdf , Handwriting

- Lec06_Ex.pdf , Handwriting

Lab05.pdf, (Will be posted on Friday 5pm)  
Given files

Q0 Static field
Q1 Array List of Employees
Q2-4 Inheritance (+ Manager + PO)
Q5 Singleton (PO)
Q6 Counters (Q6 hints: stop at -1,-1)

[Answer Q5, Q7] Drawings.pdf



Lab06.pdf, (Will be posted on Friday 5pm)  
Given files

Interface and State-Pattern
Q1 Generate team messages
Q2 Members with Roles
Q3 Add "Disappeared Member"
Q4 changeLeader
Q5 Search a member among teams

Lab05 Q0,7: Submit to Due Oct09 3pm
Lab05 Q2,5,6: Submit to Due Oct09 3pm


Lab06: Submit Q2-5 to Due Oct16 3pm

Wk 07-
09

[Topic 05] Interface and Inner Classes
[Core Java Chp06, Absolute Java Chp13]

- Topic05.pdf , Given Code

- Lec09_Ex.pdf, Hand-writing

- HeapAndStack.pdf


- Lec07_Ex.pdf, Hand-writing

- Lec08_Ex.pdf, Hand-writing

- Lec09_Ex.pdf, Hand-writing

Lab07.pdf, Given files

(Q1-Q6) Answer Key Things Explained.pdf
(Q7) Programming - Bank accounts

Lab08.pdf, Given files

(Q0) Intro Ans(PocketDrawing).pdf
(Q1-6) command + undo/redo

Coming labs:
Week 9: Lab08(Mon-T03,Fri-T02),
 Consultation(Wed-T01,Thu-T04)
Week 10: Lab09 for all
Week 11: Lab10 for all
Week 12: Lab11 for all
Week 13: Lab12 for all
[Pls read my email on Oct21]

Lab07 Q1-6: Submit to Due Oct23 3pm

Lab07 Q7: Due: Oct 23 3pm

Lab08 Q1-6: Submit to Due: Oct 30 3pm

Wk 09-10

[Topic 06] Exception Handling
[Core Java Chp11, Absolute Java Chp09]

- Topic06.pdf , Given Code

- Lec10_Ex.pdf, Hand-writing

Quiz 2 - First 40 min of Wk08 lecture
   Coverage: labs+lectures so far;
    exclude Object Wrappers & Autoboxing
      (Topic 04 page 13).
   Focus: Lab and Lecture Exercises.
   Preparation should involve:
    Re-do exercises, without hint/guideline
    Please specificially refer to past paper of
       Quiz 2: coding+drawing,
    and Week 07 Lab and Lecture exercises
   Bring Pencils + erasers!!

Quiz 2: The paper
(Redo deadline : Week 9 Monday;
   submit .java and picture by email;
   What is Quiz Redo )

Quiz 2 Results:

   No. of students: 116; Avg: 28.4 (out of 40)
   Very Dangerous (0-14.9): 8 students
   Need Catch-up (15-19.9): 7 students
   Not safe (20-24.9): 19 students
   Not safe (25-29.9): 26 students
   OK La (30-34.9 marks): 27 students
   Good (35-37.9 marks): 22 students
   V Good (38.0-39.8 marks): 7 students

The paper and model answers

Lab09.pdf, Given files

(Q1) Team Management (Asg startup)
(Q2,3) command + undo/redo

Drawing(Page6).pdf

Lab10.pdf, Given files

Part I Coding with Exception Handling
    [Hints for Assignment Phase 1]

Part II MC on Exception Handling

Lab09 Q1-3: Submit to Due: Nov 06 3pm

Lab10 Section I Due: Nov 13 3pm

Lab10 Section II Online ex. Due: Nov 13 3pm

Wk 10-11

[Topic 07] Generic Programming

[Core Java Chp 12, Absolute Java Chp
14, docs.oracle.com]

- Topic07.pdf , Given Code


- Lec10_Ex.pdf, Hand-writing

- Lec11_Ex.pdf, Hand-writing



Lab11.pdf , Given files

(Q1) Tracing
(Q2) Course Sys - check classmate (UML)
(Q3) Class Listing

Lab11 Q2-3: Submit to Due: Nov 20 3pm

Wk 11-
13

[Topic 08] Collections

[Core Java Chp 13 , Absolute Java Chp 16,
LIANG Chp 22, docs.oracle.com]

- Topic08.pdf , Given Code



Assignment: here

- Lec13_Ex.pdf , Handwriting

[Topic 09] OOP Review and more

- Topic09.pdf


Quiz 3 - First 40 minutes of week 12 lecture
   Coverage: everything in labs and lectures of week 1 to week 11, but
     Exclude the following: inner class, new things in Topic 7 and Topic 8 (Generic Programming and Collections)
     For example, you may need to use ArrayList (you learnt this already before Topic 7). However, you will not need to write generic classes.
   Focus: knowing the terms, coding design and skill
   Preparation should involve: Re-doing exercises, don't look at hints / guidelines.
   Bring Pencils + erasers!!
   Review past quiz paper: here

Quiz 3 - First 40 min of Wk12 lecture
   Coverage: labs+lectures up to Lab10+
    Topic06; more on later examples and
    exercises; but exclude inner class.
   Focus: Lab and Lecture Exercises.
    knowing the terms, coding design+skill
   Preparation should involve:
    Re-do exercises, without hint/guideline
   Question styles:

    Please refer to past papers.
   Bring Pencils + erasers!!

Quiz 3: The paper
(Redo deadline : Week 12 Thursday;
   submit files by email;
   What is Quiz Redo )

Quiz 3 Results:

   No. of students: 108; Avg: 21.70 (out of 40 marks)
   Very Dangerous (0-9.9): 10 students
   Need Catch-up (10-19.9): 29 students
   Not safe (20-29.9): 54 students
   OK La (30-34.9 marks): 11 students
   Good (35-40 marks): 4 students
   Highest marks: 38.08, 36.1, 36.1, 35
   Count of full marks for Q1: : 3 students
   Count of full marks for Q2: : 2 students
   Count of full marks for Q3: : 7 students

The paper and model answers

Quiz 3: The paper and model answers
(Redo deadline : Week 12 Saturday;
   submit files by email;
   What is Quiz Redo )

Quiz 3 Results:

   Total no. of students: 101
   Average: 20.6 marks
   Failed (0-15.9 marks): 34 students
   Good (>=30 marks): 19 students
   Highest 4 marks: 37, 37, 36, 36

The paper and model answers

NOTE: Redo exercises carefully,
   don't look at hints/guidelines.

    As soon as possible!

Sorry to JAVA fans:
   PASS doesn't allow Packages.

Lab12.pdf, Given files

(Q1) Double Agent
(Q2) Playables
(Q3) Runnables
(Q4) AddDropControllers

Starting to work on your assignment:
(1) Lab10 Sect.I: Coding with Exception
    (Easy; Help you do Asg Phase 1)
(2) Assignment
    (12% of CS2312; Due Dec02)
You may first go through (1).
Then you are ready for the assignment!

Lab12 Q1-4: Submit to Due Dec 02 1pm

For dangerous students:
   Learn from Helena / Helper and then
   REDO all programs on your own A.S.A.P. !
   Target: 100% digestion!

Note about PASS:

- PASS doesn't allow Packages.

- If a program has >=2 .java files,

PASS needs us put main() in Main*.java

- And "Main*.java” cannot be in zip/rar.

- Create only 1 Scanner object for
System.in.




Wk 13

[Topic 09] OOP Review and more

- Topic09.pdf


- Lec13_Ex.pdf , Handwriting

2013/14 Sem B Exam Paper
(We will go through the answers
in lab classes of week 13;
please preview before coming.)




Assignment (12 marks) - Due Apr 25 (Monday of "Week 14"):
Asg sheet and given files

Sample solution: here

Exam and Consultation

CS2312 Exam: Dec 13 Tue 09:30-11:30

Face-to-face consultation:

Dec 12 Mon 12:00-18:00 (extend if needed); Location: my office (B6423; lift-9)
If need to look for me: call 3442-8042

Phone consultation:

Dec 11 Sun 14:00-18:00 (extend if needed); Tel: 3442-8042
If not reached, email me your phone and question: cshwong@cityu.edu.hk

Email consultation (email reply or request phone/whatsapp reply or face-to-face appointment):

Anytime: cshwong@cityu.edu.hk


Previous quiz papers: here

#1: CS2312 Catch-up Clinic
      is provided in week 1 to week 3. Recommended to those who got B or below in CS2310.
      For details, time table and enrollment, please click here .

#1:
     
Programming Clinic for CS courses will start from week 4: http://courses.cs.cityu.edu.hk/clinic/ Time table (No need to register)

#2: [T01 students] Choice of make-up for holiday of Oct 02 (Mon): Click here

#3: For submissions after the deadlines, please send your work to me by email as soon as possible.

#4: Lecture notes of all topics - Old Version in 2015 Nov (105pages) used in last semester : here

Team Study and Lab Hosting (Labs of week 5,6,7,8,9)

Grouping and Lucky-draw result: T01(Mon) T02(Tue) T03(Wed)
Grouping and Lucky-draw: Your week 3 lab lessons

Schedule of Preparation Tutorials (Venue: MMW-2462)

[For Lab05 Hosts] Sep 29 (Wk 4 Fri) 19:00-21:00
[For Lab06 Hosts] Oct 06 (Wk 5 Fri) 19:00-21:00
[For Lab07 Hosts] Oct 13 (Wk 6 Fri) 19:00-21:00
[For Lab08 Hosts] Oct 20 (Wk 7 Fri) 19:00-21:00
[For Lab09 Hosts] Oct 27 (Wk 8 Fri) 19:00-21:00

(Change to 1900-2100 if clash with CS2611 seminar)

#4: Intro to Java Programming (by Liang) - Purchase link: https://www.elephants.com.hk/search/detail.aspx?product_id=24301139&category_id=2

Key Messages:

Tentative contents

Selected topics from:
[Core Java Chp03]    Basic Programming Structures
[Core Java Chp04]    Objects and Classes
[Core Java Chp05]    Inheritance
[Core Java Chp06]    Interfaces
[Core Java Chp11]    Exceptions
[Core Java Chp12]    Generic Programming
[Core Java Chp13]    Collections

Assessment Pattern