READING &
HOMEWORK
ASSIGNMENTS
Reading Assignments, Discussion Questions, and Programming Projects
will be listed here in chronological order by due date,
i.e., with the most recent ones at the bottom of the list.
Week 1: Tuesday
- Lab Entrance Assignment for Lab 1:
- Buy the textbook and bring it to lab. (You may also wish to buy a
USB drive for backups unless you plan to back up your work to
a machine in your room.)
- Read Chapter 1 of Java Concepts (the
textbook for the course). Much of it should be review if you
took CS 105. You
may skip Section 1.5, but be sure to read Sections 1.6 - 1.7
(including Common Errors 1.1 and 1.2)
before lab. You do not have to type in a program (we will
do that in lab), even though some of the reading may not seem to make
much sense until you do, but it will help the first lab go more
smoothly for you if you have made a first pass at the reading.
- Discussion questions: Be prepared to answer
any of today's discussion
questions.
Week 1: Wednesday
- Reading assignment:
- Review Sections 1.6 - 1.7 and read Section 1.8 and the Chapter
Summary at the end of Chapter 1.
- Constructing Objects and Invoking Methods :Read
Chapter 2, from the beginning through Section 2.7.
- Discussion questions:
- Review Exercises R1.10 and R.1.12.
Week 1: Friday
- Reading assignment:
- Testing: Read Section 2.8.
- Public Interface for a Class:
- Read Reading
Class Docmentation.
- In Horstmann, read Section 2.9, including Productivity
Hint 2.1 on p. 52. Note that in BlueJ, you can quickly get to
Sun's Java API documentation by selecting "Java Class Libraries"
from the Help menu.
- Objects vs. References: Read
Section 2.10.
- Chapter Review: Read bullets
1 - 25 in the Chapter Summary (pp. 66 - 67).
- Read the class documentation for AquaFish,
Aquarium,
and AquaSimGUI.
Also read the Concept sections in the Mini-Lab: Creating
Fish in an Aquarium.
- Discussion questions:
- Read the source code for the initial version of the
AquariumController class. How many constructors
does it have? How many methods? What kinds of statements do
you find in the constructor(s); in other words, what type of
behavior is found there? What type of statements can be found
in the method(s), or what type of behavior might you put there
in the future?
- Where in the
AquariumController source code is the statement
that constructs an
Aquarium object? Compare this with the
specification for the
Aquarium constructor in the Aquarium
class documentation. How do you explain the differences
between the class documentation specification and the actual code?
- Do Review Exercises R2.10 - R.2.11.
- We will be doing a mini-lab, so bring your
USB drive to class, or be prepared to transfer files to and from
the computer in your room if you have one.
Looking Ahead:
Week 2: Monday
- Reading assignment:
- Numeric Values: Read Sections 4.1
and 4.2, through the middle of p. 128.
- Strings: Read Section 4.6.
Skip the Advanced Topics and Random Fact at the end of the
section.
- If Statements (Decisions): Read
Sections 5.1 through 5.4. Skim the long code examples; if not
everything makes sense to you, don't worry about it. We haven't
talked about writing methods in a class yet (Chapter 3), although we'll
come to that soon. Skip the Advanced Topics.
- Read the Concept sections in the Mini-Lab: A Whirl
of Color.
- Discussion questions:
- Review Exercises R2.1 - R.2.9.
Week 2: Tuesday
- Lab Entrance Assignment for
Lab 1:
- Reading assignment:
- Review of Alternatives:
Review Sections 5.2 - 5.4
- Complete Monday's minilab, including all Stop and Think questions.
- Programming Project #1
is due at the beginning of lab.
As always, bring a USB drive if you have one.
Week 2: Wednesday
- Reading assignment:
- More on Conditions and Logic:
Review Common Error 5.2 on p. 181 ("Dangling
else")
and Section
5.4, especially Common Errors 5.3 and 5.4. I also recommend reading
Advanced Topic 5.3, and
Section 5.4.4 on De Morgan's Law. Read Section 5.5, including
Quality Tips 5.3 and 5.4, and the Chapter Summary.
Week 2: Friday
- Reading assignment:
- For Loops: Read Sections 6.2 and
6.3.
Skip Quality Tip 6.1 on p. 213, but read the Common
Errors 6.3 and 6.4, and Quality Tip 6.2 on pp. 214 - 215.
- Read the Concept sections in the Mini-Lab: Keep
on Moving.
- Discussion questions: R5.5 - R5.6,
R5.8 - R.11, R5.13, and R5.14 (pp. 194 - 195).
Looking Ahead:
Week 3: Monday
- Reading assignment:
- ArrayLists: Read Sections 7.2 -
7.3, including Common
Error 7.3. Ignore any references to
arrays for now; we'll come back to them.
- Discussion questions:
Week 3: Tuesday
- Reading assignment:
- The "for each" loop: Read Section 7.4.
- Lab Entrance Assignment:
- Exercises R6.2 and R.6.3 on p. 238. You should bring these, neatly
typed, to lab.
- Programming Project
#2 is due at the beginning of lab.
Week 3: Wednesday
- Reading assignment:
- Read the Concept sections in the Mini-Lab: More
Fish!.
Week 3: Friday
- Reading assignment:
- Implementing Classes: Read
Chapter 3 through Section 3.5.
- Discussion questions:
Looking Ahead:
- Programming Project #3
is due at the beginning of Lab 4.
- Programming Project #4
will be due at the beginning of class on Friday of Week 4.
You may start it anytime after finishing the in-class exercise on Friday of 3rd Week.
Jump directly to
Week 1
| Week 2
| Week 3
| Week 4
| Week 5
| Week 6
| Week 7
| Week 8
| Week 9
| Week 10