![]() |
|
Syllabus |
This course introduces the Java programming language and object-oriented programming techniques to students who already know how to program.
The only prerequisite is experience in at least one high-level programming language. "Experience" here means at least two terms of programming courses or professionally programming in a language for at least a year. If you are uncertain whether you have the right background call me or send me e-mail.
![]() |
The textbook is "Computing with Java" by Art Gittleman and is pictured to the left. Note that this is the alternate 2nd edition and that it comes with a CD-ROM. It is published by Scott Jones under ISBN 1-57676-074-X. |
This is a tentative schedule of the topics and chapters we will discuss. Please do the reading before or early in each week. Note the dates of the midterm and final exams.
Week | Dates | Reading | Topics |
---|---|---|---|
Week 1 | 1/7, 1/9 | Chapters 1 through 4 | Java basics |
Week 2 | 1/14, 1/16 | Chapter 5 | Simple classes; built-in classes |
Week 3 | 1/21, 1/23 | Chapter 6 | Event-driven programming and applets |
Week 4 | 1/28, 1/30 | Chapter 7 | User interfaces |
Week 5 | 2/4, 2/6 | Chapter 8 | Arrays |
Week 6 | 2/11, 2/13 | Midterm (Tuesday, 2/11); command line arguments | |
Week 7 | 2/18, 2/20 | Sections 13.3, 14.2 | Data structures: stacks, queues, and lists |
Week 8 | 2/25, 2/27 | Chapter 9 | Inheritance |
Week 9 | 3/4, 3/6 | Chapter 11 | Exceptions; input/output |
Week 10 | 3/11, 3/13 | Chapter 17 | JDBC |
Finals | 3/20 | Final exam (11:45am to 2:00pm) |
We will use the Java Software Development Kit (SDK), available from java.sun.com. A version of this comes on the CD-ROM that accompanies the textbook. I believe the one on the CD-ROM is version 1.3, which is fine. In class, I will use the Textpad text editor (an evaluation version is available from www.textpad.com). I will compile and run programs from within Textpad and from the command line.
There will be two exams: a midterm and a final, each worth 35% of the grade. The remaining 30% will be made up by programming assignments. Letter grades will be assigned according to the following table.
Percentage | Grade |
---|---|
93% to 100% | A |
89% to <92% | A- |
86% to <89% | B+ |
82% to <86% | B |
79% to <82% | B- |
76% to <79% | C+ |
73% to <76% | C |
70% to <73% | C- |
67% to <70% | D+ |
60% to <67% | D |
<60% | F |
My office hours can be found on my personal web page.
I hold office hours specifically so that students have a time when they know I'll be in and available to answer questions. Please make use of my office hours! One of the resources you get when registering for a course is a chance to talk to the instructor one on one. Students often discover that even a brief chat about a program they're having trouble with will often clear up that (and other) problems, allowing them to proceed and complete the assignment.
In fact, you should stop by whenever you have a question. My teaching is not limited to the classroom. I have found that some the best teaching (and learning) happens when a student comes in to see me.
My office hours are posted above but I want to make it clear that I'm also available outside of those hours. The best way to see me then is to send me e-mail (jrogers@cs.depaul.edu) or call me (312-362-8334) and arrange for a meeting time. You can also try dropping by. If I'm in and not busily engaged in something else, I will be more than happy to see you.
Students may discuss assignments with one another in general terms. For example, you may discuss general strategies for attacking a problem. But you may not work together when writing the solution. I know it may sometimes not be clear what is considered permissible cooperation and what is considered cheating. If you are not certain, please discuss it with me ahead of time.
A corollary is that if you are having trouble getting started on an assignment, please come in and see me or send me e-mail (see my discussion about office hours above). Students often find that even a brief chat will clear up quite a few problems.
Students may not collaborate in any way on exams.
Activities that are clearly cheating include (but are not limited to): copying another person's work on a programming project, homework assignment, or exam; using any reference not authorized by the instructor on a programming project, homework assignment, or exam.
The penalty for cheating is an F in the course. Also, the appropriate dean will be informed in writing of cheating incidents and will be advised that students assigned an F for cheating should not be permitted to receive a W for the course.