Instructor: Peter Dordal TA: Nimisha Sharma Joshi
MW 4:15-5:30, 25 EP Room 201, Lab Mon 3:10-4:00
The labs are required.
On occasion, I may reverse the order on Mondays and do the lecture first and then the lab.
Spring 2025:
I am generally in my office on Mondays from 10:00 to noon, and from 1:45 to 3:45.
Sometimes I have meetings or come in late, so check first.
I am also available other times via Zoom, by appointment. Contact me via email for the Zoom meeting ID.
Text: Barnes & Kölling, Object First with Java: A Practical Introduction Using BlueJ, Fourth edition (3rd edition is ok).
We will be using the BlueJ java environment. On their downloads page, in the blue box at the righthand side, are links to the Sun Java Developers Kit packages, JDK5 and JDK6. I recommend JDK6 unless space or download bandwidth is at a premium.
Topics:
There will be two in-class exams prior to the final. Exam 1 is Wednesday, Feb 18 (week 6).
Exam 2 is Wednesday, April 8 (week 12).
Here is the exam 1 study guide. Here are (selected) solutions.
Here is the exam 2 study guide. Here are solutions.
Here is the final exam study guide, and solutions.
Here is the Notebook source code, that you will be given on exams 1 and 2 as a source of syntax examples.
Week 1: Jan 12 | Week 2: Jan 19 (no class Jan 19) | Week 3: Jan 26 |
Week 4: Feb 2 | Week 5: Feb 9 | Week 6: Feb 16 (exam 1 Feb 18) |
Week 7: Feb 23 | Week 8: Mar 9 | Week 9: Mar 16 |
Week 10: Mar 23 | Week 11: Mar 30 | Week 12: Apr 6 |
Week 13: Apr 13 (no lab Apr 13) | Week 14: Apr 20 |
As a rough guide, the grading breakdown will be as follows:
But this is sort of approximate. I reserve the right to change things +/- 5% or so. I also might make individual adjustments to the proportions above, but only in your favor.
Labs should be done during the lab period. If you're not able to do that, they should be submitted by the following lab session.
Sometimes you may be asked to resubmit assignments; as a general rule a resubmitted assignment will never receive a higher grade than that of someone who I didn't feel needed to resubmit. You do, however, get some grace regarding lateness when you resubmit. It is always better to submit what you have on time.
I may have you pair up to do some assignments.
My general course groundrules are here.
Week 1:
Hello.java,
LabClass.java
Week 2:
picdemo (pld version of Picture),
Picture.java from picdemo.
Week 4:
numerics, also
Numerics.java
Week 5: weblog_graph
Here are some individual projects from the above set:
Chapter 1: lab-classes
Chapter 2: Naive TicketMachine, Better TicketMachine.
Chapter 3:
Clock-Display,
Mail-System
Chapter 4:
Notebook version 1,
Notebook v2
auction, weblog
Chapter 5: