CSC 211

Spring, 2003

Syllabus

Brief description

This class is an introduction to object-oriented programming.  You will learn how to write simple structured and object-oriented programs in the Java programming language.

Prerequisite

The only prerequisite is MAT 130, which is usually satisfied by passing the math placement exam.

Textbook

The textbook is "Computing with Java" by Art Gittleman and is pictured to the left.  Note that this is the alternate 2nd edition.  It is published by Scott Jones under ISBN 1-57676-074-X.

Topics and calendar

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 3/31, 4/2 Chapter 1 The programming environment; a "Hello, World" example; overview of course; introduction to classes; the System.out class.
Week 2 4/7, 4/9 Chapter 2 More about classes; types, variables, expressions;  simple I/O and using predefined classes (e.g., String class).
Week 3 4/14, 4/16 Chapter 3 Branching (if statement); looping (for and while statements).
Week 4 4/21, 4/23 Chapter 4 Examples using control statements and objects from predefined classes; the String and Math classes.
Week 5 4/28, 4/30   Review and midterm
Week 6 5/5, 5/7 Chapter 5 Writing simple classes and methods; parameter passing and return values.
Week 7 5/12, 5/14 Sections 6.1 and 6.4 More examples writing classes; references and the static modifier; the Applet, Color, and Graphics classes.
Week 8 5/19, 5/21 Chapter 8 Simple arrays and examples using arrays.
Week 9 5/26 (no class), 5/28 Chapter 7 Note: May 26th is Memorial Day and a holiday.  
Graphical components, events, and listeners; inner classes, interfaces (implements keyword), and inheritance.
Week 10 6/2, 6/4   Practice problems and review; accessing array elements, array searching, and arrays of objects.
Finals week Tuesday, 6/10   Final exam (11:45am to 2:00pm)

Evaluation

There will be two exams: a midterm and a final, each worth 40% of the grade.  The remaining 20% 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

Office hours

My office hours can be found on my personal web page

My office hour rant

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.

Policy on plagiarism and cheating

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.