Reading Schedule

CS 145 Spring 2007

I. Reading Schedule
Any textbook for a programming language course should be seen as both a source of assigned readings AND as a reference book. However, if a book is going to be useful as a reference (and no one simply remembers all they read in such a book), the user needs to be familiar with the book's contents. Thumb through your text; check out the table of contents and the index; read the Preface to find out where the authors are coming from; familiarize yourself with the appendices; find out where to get the electronic version of the source code found in the text - make the book your tool.

Below is a tentative schedule of what you should be reading and when. Note that it includes both text and Java code reading assignments. It is very important that you take the time to read code. The more code you read, the better you will be as a programmer.

Since the schedule is tentative to start with, it may change and will certainly have additions. You should check it often to catch changes. All reading assignments are "due" on the date provided. This means that there may be an oral or written quiz on the reading material on that date. Underneath the reading schedule is a set of links to the expectations for the chapters in the text. Use these to determine what you should focus on as you read and study the chapters.

Now, begin reading!.

-->
Date Reading
Comments
January 18 (Lab)
  1. Go over the syllabus and the other material on the WebCT site for this course.

  2. Pages xxi and xxii then page through the rest of the Preface

  3. Chapter 1

  4. Sections 2.1, 2.2, and 2.3 up through 2.3.4

We start the course with lots of reading because there was no way to assign readings for day 1. There will rarely be this much reading in the future. Do make sure the material makes sense. If it does not come in with questions. Note that if there are no questions, we could have an oral quiz!

We will work with DrJava in the lab - the material in Section 2.2
Jan 22
  1. The rest of section 2.3

  2. 2.4.1 and 2.4.2

  3. What is an Object

Jan 24
  1. The rest of chapter 2

Make sure you understand what variables are and how to draw pictures such as those found in figures 2.5-2.9. Be sure to takes notes on the pictures I put on the board in class.

Jan 29
  1. Sections 3.1 - 3.5 of chapter 3
  2. Read the code TurtleTestCjs.java

Do your best to understand the code and come in with questions.

Jan 31
  1. Method design patterns. We will look at the algorithmic patterns mentioned here in a few weeks.

  2. A series of pages discussing Java methods - starting with this and ending six pages later

These pages go over the same material but from a different perspective.

Feb 1 Lab
  1. Review sections 3.1- 3.5 as we will work with these in lab

This chapter deals with lots of the nitty gritty of programming in Java. Don't worry about memorizing the material as you will learn it by using it. Do make sure you understand the concepts, especially the concepts related to method declarations and the use of parameters.

Feb 5 The rest of chapter 3

Be sure you read and come in with questions on the summary section. There is a test this Thursday (3.7)

Feb 7
  1. Review day. Be sure you have gone over the expectations for chapters 1 through 3.

  2. If you are not coming to class with questions, read Sections 4.1, 4.2, and 4.3 up through section 4.3.1

Note again: - if you are not coming in with questions, be sure you read the first part of chapter 4!

Feb 8
  1. TEST

Feb 12
  1. Section 4.1, 4.2 (up to page 89)

We now study how to repeat actions over and over in Java.

Feb 14
  1. Section 4.2 and section 4.3 up to page 97

Here we start to play with "while" loops, another important part of programming.

Feb 15 (Lab)
  1. Section 4.3.3

Note how this section walks through (traces) the code carefully. We will do this in the lab.

Feb 19
  1. Sections 4.3.4 - 4.3.7

Play close attention to the notions of scope and the "for" loop

Feb 21 The rest of chapter four.

The "for" loop will be used extensively in the rest of the book.

Feb 22
  1. Basic Patterns

    Read this page then follow the link to the Algorithmic Patterns. Make sure you understand patterns A1, A2, B1, B2, B3, B4, D1, D2, and D3.

We will work with these patterns in class. Make sure you come in with questions as this material is only lightly covered in the text.

Feb 26 Section 5.1

Lots of loop code!

Feb 28 Section 5.2

Lots of loop code!

March 1 Lab Section 5.2.2

More code to read and play with!

March 5 The rest of chapter 5

Make sure you review the summary section (5.3)
March 7 Sections 6.1 and 6.2

We now move on to conditions (if statements).

March 8 Lab Section 6.3

March 12 Sections 6.4- 6.5

As usual make sure the summary section (6.8) makes sense.

March 14
  1. Rest of chapter 6

  2. Chapter 7 up to page 221

Make sure the summary section (6.8) makes sense. On Thursday after break there will be a test on chapters 4 through 7.

March 19 - 25 Spring Break

On Thursday after break there will be a test on chapters 4 through 7.

March 26
  1. The rest of section 7.1
  2. Sections 7.2, 7.3.1, 7.3.2, 7.3.5, and 7.3.6
  3. Section 7.4 - a review of the material in the chapter

The key concepts of chapter seven are packages, inheritance, and interfaces. On Thursday there will be a test on chapters 4 through 7.

March 28
  1. Review day

Be sure you have gone over the expectations for chapters 4 through 7. If you do not come in with questions, we will proceed into sections one and two of chapter 11. (Yes, we skip a few chapters since they cover the same Java concepts but use examples involving sound instead of images.)

March 29
  1. Test on chapters four through seven

April 2
  1. Sections 11.1 and 11.2

You can skip over the material on debuggers (11.2.6) for today.

Chapters 8 through 10 cover the same Java material only using sound instead of graphics. If students desire, we may return to these chapters later in the semester.

April 4 Sections 11.3 through 11.6

Again, you can skip over the material on debuggers (11.4.2) for today. Do make sure you understand how to create and use your own classes.

April 5 - Lab Sections 11.2.6 and 11.4.2 - on debuggers

We will play with debugging in lab.

April 9 Easter Monday holiday

April 11 The rest of chapter 11

April 12 - Lab Re-read chapter 11, sections 11.6 and 11.7 as you will work with this in lab - in addition to more work with classes, especially work related to inheritance (Section 11.9)

April 16
  1. Patterns for OO Design

  2. Re-read chapter 11 as it is very important you understand how to create your own classes.

April 18 Sections 12.1 and 12.2 of chapter 12

There are two key ideas in this chapter - file processing and arraylists. For this class we start with the basics

April 23 Section 12.3

April 26 The rest of chapter 12

May 1 Semester Review

May 11 7:30 AM: Final Exam

You should review all tests, labs, and, of course, the expectations pages. You will be allowed to bring in two 8-1/w x 11 inch pieces of paper with as much information as you can place handwritten.

II. Chapter Expectations