CSCI 221 - Computer Programming II (in Java)


Syllabus [PDF]


Tentative Schedule

Contents Examples & Homeworks Zybook Reading & Exercises
Week 1, Jan. 08 Class Settings & Preliminaries History of languages: Ada, Basic, C, C++, Java, ...
Week 1, Jan. 10 Introduction to Java HelloWorld Ch 1.1~1.4, 1.7, 1.9, Due Monday 11:00am
Week 2, Jan. 13 Basic Objects Demo1
Week 2, Jan. 15 Basic Objects: multiple classes in a project; reference variables; accessor and mutator; Java API Demo2 Ch 2.6~2.8, 2.11~2.16, Due next Wednesday 11:00am
Week 2, Jan. 17 Basic Objects: multiple constructors for a class; debugging Demo3
Week 3, Jan. 20
Martin Luther King's Day
Week 3, Jan. 22 Classes and Methods Demo4: Restaurant, RestaurantFavorites
Demo5: RunnerInfo, RaceResults
Week 3, Jan. 24 Classes and Methods Demo6: Pizza, TestPizza
Programming Assignment 1, Due next Thursday 11:30pm
Ch 3.1~3.6, Due next Monday 11:00am
Week 4, Jan. 27
Class meeting cancelled.
Read Chapter 3.7~3.9 and do zyBook assignment
Ch 3.7~3.9, Due Wednesday 11:00am
Week 4, Jan. 29 Data Types Ch 4.1~4.6, Due Friday 11:00am
Week 4, Jan. 31 Data Types Ch 4.7~4.11, Due Monday 11:00am
Week 5, Feb. 03
Lab One
Week 5, Feb. 05 Branches & Loops Demo7: Time, Main,
Week 5, Feb. 07 Branches & Loops Programming Assignment 2, Due next Thursday 11:30pm Ch 5.2~5.19, Due next Monday 11:00am
Week 6, Feb. 10 Branches & Loops Ch 6.2~6.9, Due Wednesday 11:00am
Week 6, Feb. 12
Test One (Chapter 1 ~ 6)
Spring Career & Internship Fair on Thursday 1-4pm, in TD Arena
Week 6, Feb. 14 Arrays
CS Department Fair on Friday 1-3:30pm. Have Pizza!
Ch 7.1~7.4, Due Monday 11:00am
Week 7, Feb. 17 Arrays
Week 7, Feb. 19 Arrays Programming Assignment 3: Game of Tic-Tac-Toe. See instructions in OAKS. Due next Saturday 11:30pm
Week 7, Feb. 21
Lab Two
Complete the MyArray and MyImage assigned in OAKS. Test with your own main(). Submit your source code and screen snapshots to OAKS.
Week 8, Feb. 24 More Methods Ch 8.1~8.5, Due Wednesday 11:00am
Week 8, Feb. 26 More Methods Ch 8.6~8.10, Due Friday 11:00am
Week 8, Feb. 28 More Methods Ch 9.1~9.4, Due Monday 11:00am
Week 9, Mar. 02 More Classes Ch 9.5~9.8, Due Wednesday 11:00am
Week 9, Mar. 04 More Classes Ch 9.9~9.14, Due Friday 11:00am
Week 9, Mar. 06 Inheritance Programming Assignment 4: Online Shopping Cart. See instructions in OAKS. Due Monday of the Spring Break at 11:00pm Ch 10.1~10.3, Due Monday 11:00am
Week 10, Mar. 09 Inheritance
Week 10, Mar. 11
Lab Three
Week 10, Mar. 13
Test Two
Last day to drop the class.
Week 11, Mar. 16/18/20
Spring Break
Week 12, Mar. 23 Inheritance: ArrayLists and Abstract Classes Ch 10.6~10.9, Due Wednesday 11:00am
Week 12, Mar. 25 Inheritance: UML and Interfaces Ch 10.10~10.11, Due Friday 11:00am
Week 12, Mar. 27 Generics: Sorting and Comparable Programming Assignment 5: Sorting Rectangles and Boxes by areas and volumes. See instructions in OAKS. Due Sunday 4/05 at 11:30pm Ch 11.1~11.2, Due Monday 11:00am
Week 13, Mar. 30 Class Generics, Enhanced Loop Ch 11.3~11.4 & CH 12.1~12.2, Due Wednesday 11:00am
Week 13, Apr. 1 Collections: Linked List
Week 13, Apr. 3 Collections: HashMap and HashSet Partial solution to HW 5, i.e. Lab 2 augmented to implement Comparable. Ch 12.3~12.6, Due Monday 11:00am
Week 14, Apr. 06 Collections: Queue and Deque Programming Assignment 6: Stack implementation and application. See instructions in OAKS. Due Thursday 4/16 at 11:30pm
Week 14, Apr. 08 File input and output Ch 15.1~15.5, Due Friday 11:00am
Week 14, Apr. 10 Exception Handling Ch 16.1~16.4, Due Monday 11:00am
Week 15, Apr. 13 Recursion Demo of recursion vs. iteration Ch 11.1~17.5, Due Wednesday 11:00am
Week 15, Apr. 15 Recursion More Demos of recursion.
Homework 7 for self practise. No submission is due.
Ch 17.6~17.8, Due Friday 11:00am
Week 15, Apr. 17 Introduction to binary search and sorting Take home
Test Three
Week 16, Apr. 20 Review
Week 16, Apr. 22 Review
Week 16, Apr. 24 Open book
Final Exam at 4:00pm.
* Elective contents that are not required for tests.
Final Exam: Friday, Apr. 24 at 4:00pm.

Last updated: 2020-4-15