(Legend: OF = Objects First with Java)
| Class | Topics / Activities | Resources (Readings before class) | Students' responsibilities (During and/or after class) |
|---|---|---|---|
* 1 * Wed, |
Introduction to the course, administrivia. Introduction to Software Engineering and Object-Oriented Analysis, Design and Programming Here's the model file for the homework and extra-credit work. |
OF: Preface | Explore the course website and the textbook's website. |
* 2 * Mon, Slides in HTML and PDF |
Objects and classes | OF: ch.1 | Attempt all exercises in ch.1. |
* 3 * Wed, Slides in HTML and PDF |
Objects and classes - practice | OF: ch.1 |
Finish all the exercises and the crossword puzzle in ch.1. Place your BlueJ projects in a folder called Projects in your 202 eden folder. |
* 4 * Mon, Slides in HTML and PDF |
Composition and inheritance. See Shape.java, Circle.java, Square.java, Triangle.java, Canvas.java in project NewShapes (with inheritance). |
OF: ch.2 | Attempt exercises in ch.2. |
* 5 * Wed, Slides in HTML and PDF |
Defining classes. |
OF: ch.2 | Attempt all exercises in ch.2. |
* 6 * Mon, Slides in HTML and PDF |
Defining classes - exploring the source code. | OF: ch.2 | Finish all exercises and the crossword puzzle in ch.2. Here are some examples of bad heaters: Heater1, Heater2, Heater3, Heater4, Heater5, Heater6. Try to find what is wrong with them and to correct them. |
* 7 * Wed, Slides in HTML and PDF |
Object interaction. | OF: ch. 3 | Attempt all exercises in ch.3. |
* 8 * Mon, Slides in HTML and PDF |
Object interaction. | OF: ch. 3 | Test (for extra credits): Finish all exercises and the crossword puzzle in ch.3. |
* 9 * Wed, Slides in HTML and PDF |
Grouping objects. | OF: ch. 4 | Attempt all exercises in ch.4. |
* 10 * Mon, Slides in HTML and PDF |
Grouping objects. | OF: ch. 4 | Finish all exercises and the crossword puzzle in ch.4. |
* 11 * Wed, Slides in HTML and PDF |
Grouping objects. |
OF: ch. 4 | |
* 12 * Mon, Slides in HTML and PDF |
Graded lab work (sit-in assignment). | OF: ch. 1-4 | |
* 13 * Wed, Slides in HTML and PDF |
Accessing internal components. Working with Strings. |
OF: ch. 5 | Attempt all exercises in ch.5. |
* 14 * Mon, Slides in HTML and PDF |
More Strings. Passing parameters. |
Alphabet.java | |
* 15 * Wed, Slides in HTML and PDF |
More sophisticated behavior. | OF: ch. 5 | Attempt all exercises in ch.5. |
* 16 * Mon, Slides in HTML and PDF |
Spring break. | ||
* 17 * Wed, Slides in HTML and PDF |
Spring break. | ||
* 18 * Mon, Slides in HTML and PDF |
More sophisticated behavior. Playing and practising (play.zip, practise.zip). |
OF: ch. 5 | Try to finish all exercises and the crossword puzzle in ch.5, apart from the BouncingBall example. Here's some extra homework. |
* 19 * Wed, Slides in HTML and PDF |
Lab work for extra-credits (for everyone else). |
OF: ch. 1-5 | |
* 20 * Mon, Slides in HTML and PDF |
Static variables and methods (BouncingBall example). BallDemo.java, BouncingBall.java |
OF: ch. 5 OF: ch.6 |
Finish all exercises and the crossword puzzle in ch.5. Start exercises in ch.6. |
* 21 * Wed, Slides in HTML and PDF |
Testing and debugging | OF: ch.6 | Exercises in ch.6. |
* 22 * Mon, Slides in HTML and PDF |
Testing and debugging. The diary example. Day.java The Calculator example. Building a user interface. |
OF: ch.6 | Attempt all exercises and the crossword puzzle in ch.6. |
* 23 * Wed, Slides in HTML and PDF |
Testing and debugging. | Finish all exercises and the crossword puzzle in ch.6. |
|
* 24 * Mon, Slides in HTML and PDF |
Assignment 2. |
OF: ch.1-6. |
|
* 25 * Wed, Slides in HTML and PDF |
Independent work on assigned homework. | Homework. Extend calculator-gui so that it it has multiplication and division. Test it and debug it; make it work. | |
* 26 * Mon, Slides in HTML and PDF |
Designing classes. The world of zuul. |
OF: ch.7 | Start ch.7 exercises. |
* 27 * Wed, Slides in HTML and PDF |
Designing classes. | OF: ch.7 | Complete book exercises up to 7.22. Try to understand zuul-for-images.zip. |
* 28 * Mon, Slides in HTML and PDF |
Lab work. | OF: ch.7 | |
* 29 * Wed, Slides in HTML and PDF |
Maintenance and refactoring. | OF: ch.7 | |
* 30 * Mon, Slides in HTML and PDF |
Revision. Lab work. |
||
| Mon, 8:00 PM - 11:00 PM |
Final exam/assignment ! |