Introduction to Object-Oriented Programming, Fall 2006
Stephen J. Hartley, office 3rd floor Robinson,
phone 256-4500 ext. 3895
E-mail: hartley@elvis.rowan.edu
Home page: http://elvis.rowan.edu/~hartley/index.html
CS 04.113 1 Introduction to Object-Oriented Programming, Section 1, RS:
During the fall 2006 semester, my office hours are
You will need all of these for the first lab!
Marcel Gagné, Moving to Linux: Kiss the Blue Screen of Death Goodbye!, second edition, Addison Wesley, 2006, ISBN 0-321-35640-3.
Class Web pages start here:
http://elvis.rowan.edu/~hartley/Courses/IOOP/2006/Fall/index.html
Class Announcements Web page:
http://elvis.rowan.edu/~hartley/Courses/IOOP/2006/Fall/announcements.html
You need to check this page regularly!
Announcements, corrections to assignments,
adjustments to the syllabus, etc.,
will be made there.
Formal and declared status as a Computer Science major or minor or permission of instructor, MATH 01.121 Intermediate Algebra or the high-school equivalent.
This course is a ``Rowan Seminar.'' Rowan Seminars are special sections of courses available only to first year students and are designed to introduce students to the classroom skills and expectations needed to succeed academically at Rowan. Rowan Seminar is required for all new students because college is not high school. Extensive research on the first-year experience of thousands of students provides compelling evidence that the high school learning environment is poor preparation for what new college students experience. Research at Rowan suggests that although entering first-year students think they already know what will be expected of them academically, for the most part they do not actually know.
You will be introduced to the following skills, values, and expectations at the college level:
More information for students is at www.rowan.edu/biology/faculty/tahamont/sfaq.htm.
From the Rowan Undergraduate Catalog: (CS 04.113, 4 s.h.) Introduces the fundamental concepts of programming from an object-oriented perspective. Topics include simple data types, control structures, an introduction to array and string data structures and algorithms, as well as debugging techniques and the social implications of computing. The course emphasizes modern software engineering principles and developing fundamental programming skills in the context of a language that supports the object-oriented paradigm. Includes basic UNIX commands and editing.
By reading the text, participating in class, practicing in Lab, taking quizzes, and solving problems, students will develop object-oriented programming skill and gain familiarity with its fundamental principles, techniques, and terminology.
Your progress in attaining these goals will be measured by a 20 minute written closed-book closed-notes quiz every Wednesday, one mandatory office visit, weekly Lab learning exercises every Thursday, weekly index cards handed in Mondays and Thursdays (explained below), a Lab midterm exam, a Lab final exam, a written ``last'' assignment (URL below), and a written closed-book closed-notes ``quiz redo'' (comprehensive final exam).
Note that this is a hard course. Most Rowan students have a preferred learning method/style that is visual and hands-on. Most of you will therefore need to use your unpreferred learning method/style of reading, listening, analysis, and abstraction (in addition to your preferred style) in order to succeed in this course.
The mandatory office visit must occur during the first three (3) weeks of the semester in order for you to avoid the substantial penalty of not doing it, that is, it must be completed by 3:15 pm, Wednesday, September 27, 2006, in my office on the 3rd floor of Robinson building. Schedule an appointment if formal office hours are not convenient. You must also fill out and hand in the questionnaire (found in the class Web pages) at the time of your mandatory visit. You may answer the questions on a separate sheet of paper and turn that in at the time of your visit, or you may print out the questionnaire and answer the questions on it, using the back if needed.
Failing to make the mandatory office visit and/or turn in the questionnaire in the specified time frame will result in a penalty of a full letter grade at the end of the semester (A- becomes B-, B+ becomes C+, B becomes C, etc.).
The course grade will be determined as follows:
Quiz every week 18% Lab learning exercises 18% Lab midterm (towards middle of semester) 18% Lab exam (towards end of semester) 18% Index cards for Mondays and Labs 5% Written ``last'' assignment 5% Quiz ``redo'' (final exam) 18%
You must pass (60 or more) each major component individually in order to pass the course: quiz average 60 or more, lab exercises average 60 or more, lab midterm 60 or more, lab exam 60 or more, and quiz redo (final exam) 60 or more, Failure to obtain a 60 or more in a component will result in an F final letter grade for the course regardless of the other components.
Final letter grades for the semester will be based on the usual 10-point scale where avg is your semester average calculated using the above weights:
93 1/3 ≤ avg < 100 A 90 ≤ avg < 93 1/3 A- 86 2/3 ≤ avg < 90 B+ 83 1/3 ≤ avg < 86 2/3 B 80 ≤ avg < 83 1/3 B- 76 2/3 ≤ avg < 80 C+ 73 1/3 ≤ avg < 76 2/3 C 70 ≤ avg < 73 1/3 C- 66 2/3 ≤ avg < 70 D+ 63 1/3 ≤ avg < 66 2/3 D 60 ≤ avg < 63 1/3 D- avg < 60 F
An ``incomplete'' grade will be assigned only under extremely unusual exceptional circumstances, as determined by the instructor.
See http://elvis.rowan.edu/~hartley/Courses/lastHW.html for more information on the written ``last'' assignment.
Starting with Lab on Thursday, September 7, 2006, you will hand in at the end of Lab every Thursday a ``3 by 5'' index card with your name and date on it that includes on one side who your partner was that lab and how far the two of you got during lab. On the other side list any and all difficulties and/or problems you encountered and how you solved them.
Starting Monday, September 18, 2006, you will hand in at the end of class every Monday a ``3 by 5'' index card with your name and date on it that includes on one side a summary of what you learned in class that day and on the other side any questions you have. You will have the last few minutes of class on Mondays to fill out your index card.
Most labs will be ``learning labs'' that you will do in pairs. Nothing will be turned in and you will receive full credit for each learning lab that you attend, participate in, and turn in an index card. The lab midterm and lab final are assessment labs that you will do individually. They will consist of writing a fully documented and tested program in the allotted time. You will turn in your work on your primary USB drive at the end of those labs to be graded.
Exercises from the book will be done in learning Labs. During the last ten or so minutes of each learning lab, each pair that has worked together will use their secondary USB drives to make sure each member of the pair has an up-to-date copy of their joint effort. I will show you how to do this.
You will receive 10 points for each of the 12 learning labs performed, with a maximum total of 110. Thus, you are allowed to miss one learning lab without penalty.
Regular attendance in class and Lab is required. If you miss a class and there was a quiz that day, you will receive a zero on that quiz. If you miss Lab, you will receive a zero for that Lab.
Please inform the instructor in advance, preferably by e-mail, if you must be absent from a lab or class.
Students who are absent continuously for two weeks will be reported to the Dean of Students. Also a continuous two-week absence without contacting me (before the end of the continuous two-week absence) will result in an automatic F for the semester final letter grade.
We will have a written closed-book, closed-notes quiz at the beginning of class every Wednesday, starting September 20, 2006, covering the previous week's material through Thursday's lab. No makeups will be given. Quizzes are handed back the following Monday and are graded on the basis of 100 points total. There will be 13 quizzes. Your quiz scores will be added together, with a maximum total of 1200. Thus, you are allowed to miss one quiz without penalty.
Quiz question types will be definition, short answer, what does this code snippet do, and write a code snippet to do something.
The final exam is really a ``quiz redo'' because it will consist of quiz questions that I want to give you an opportunity to redo. It will be closed-book and closed-notes like the quizzes.
Drop/add ends Monday, September 11, 2006. Until then, you can easily drop and add courses (assuming there is room) to adjust your course schedule. A dropped course will not show up on your transcript.
During the first half of the semester (through October 23, 2006), a student may withdraw from a class by filling out the appropriate form and obtaining the instructor's signature. A grade of ``W'' is received on your transcript.
The Department of Computer Science policy on withdrawing after that date is that it will be approved only in extenuating circumstances beyond the control of the student, such as serious illness. In addition, after October 23, 2006, the department chair must also sign the withdrawal form. A grade of ``WP'' or ``WF,'' as determined by the instructor, is received on your transcript.
No withdrawal forms will be signed after November 22, 2006, except for extremely unusual exceptional circumstances, as determined by the instructor. In addition, after November 22, 2006, the department chair and dean must also both sign the withdrawal form. A grade of ``WP'' or ``WF'' is received, as determined by the instructor.
Rowan has two policies about acceptable use of its computers and networks, one for everybody and another specifically for students. By registering for and taking this course, you are agreeing explicitly to abide by them.
Your academic success is important. If you have a documented disability that may have an impact upon your work in this class, please contact me. Students must provide documentation of their disability to the Academic Success Center in order to receive official University services and accommodations. The Academic Success Center can be reached at 856-256-4234. The Center is located on the 3rd floor of Savitz Hall. The staff is available to answer questions regarding accommodations or assist you in your pursuit of accommodations. We look forward to working with you to meet your learning goals.
Anything you turn in with your name on it must be your own work, that is, written or coded by you and not copied from anyone or anywhere else. You must do anything you turn in with your name on it individually. You may consult with other students and the course instructor to clarify points of confusion and share ideas. However, everything you turn in with your name on it must be your own work. Copying from others is expressly forbidden. Allowing others to copy from you is expressly forbidden.
Penalties for violation of this will range from a grade of zero on the assignment to a grade of F for the course, effective immediately, and a letter to the Office of the Dean. By registering in this course, each one of you is explicitly agreeing to abide by and adhere to the above statements on academic integrity.
It is natural and desirable, in fact encouraged, that students help each other in the Learning Labs, such as discussing their approaches to the problem and checking each other's code. You will be working in pairs in Learning Lab to facilitate this.
But each student must be certain that the assignment handed in represents his or her own effort in the Lab Midterm and Lab Final.
If you use materials that you've obtained on the Internet, from a book, etc., for example, as part of a programming assignment, you must include an appropriate reference. To use such materials without proper attribution is a form of plagiarism.
Be on time. Do not eat in class. Do your best to remain in the room during class. Laptops would be okay for note taking, but not for music, instant messaging, game playing, or surfing the Web. Since ``it has come to my attention'' that computer science majors use laptops in class for the latter instead of the former, laptops will not be allowed to be on in this class. Turn off or put into vibrate mode cell phones, PDAs, and pagers. You will receive a warning the first time your cell phone, PDA, or pager goes off in class or lab. If it happens again, you will be asked to leave for the rest of that class or lab meeting. If there is a quiz that day or if it is lab, you will receive a zero.
This schedule is approximate only. Please see the announcements page for what each quiz will cover and the lab page for what will be done in each lab. ``BJ'' means the BlueJ book.
| Material to Read | Week # | Week of | Topic |
|---|---|---|---|
| 1 | Sep 6 | Administrative Matters and Introduction | |
| 1 | Sep 7 | Lab 1 on Chapter 1 | |
| BJ Chapter 1 | 2 | Sep 11 | Objects and Classes |
| 2 | Sep 13 | ||
| 2 | Sep 14 | Lab 2 on Chapter 2, part 1 | |
| BJ Chapter 2 | 3 | Sep 18 | Understanding Class Definitions |
| 3 | Sep 20 | Quiz 1 | |
| 3 | Sep 21 | Lab 3 on Chapter 2, part 2 | |
| BJ Chapter 3 | 4 | Sep 25 | Object Interaction |
| 4 | Sep 27 | Quiz 2 | |
| 4 | Sep 28 | Lab 4 on Chapter 3, part 1 | |
| BJ Chapter 4 | 5 | Oct 2 | Grouping Objects |
| 5 | Oct 4 | Quiz 3 | |
| 5 | Oct 5 | Lab 5 on Chapter 3, part 2 | |
| 6 | Oct 9 | ||
| 6 | Oct 11 | Quiz 4 | |
| 6 | Oct 12 | Lab 6 on Chapter 4, part 1 | |
| BJ Chapter 5 | 7 | Oct 16 | More Sophisticated Behavior |
| 7 | Oct 18 | Quiz 5 | |
| 7 | Oct 19 | Lab 7 on Chapter 4, part 2 | |
| 8 | Oct 23 | ||
| 8 | Oct 25 | Quiz 6 | |
| 8 | Oct 26 | Lab 8 will be the Lab Midterm | |
| BJ Chapter 6 | 9 | Oct 30 | Well-Behaved Objects |
| 9 | Nov 1 | Quiz 7 | |
| 9 | Nov 2 | Lab 9 | |
| 10 | Nov 6 | ||
| 10 | Nov 8 | Quiz 8 | |
| 10 | Nov 9 | Lab 10 | |
| BJ Chapter 7 | 11 | Nov 13 | Designing Classes |
| 11 | Nov 15 | Quiz 9 | |
| 11 | Nov 16 | Lab 11 | |
| BJ Chapter 8 | 12 | Nov 20 | Improving Structure with Inheritance |
| 12 | Nov 22 | Quiz 10 | |
| Thanksgiving holiday | 12 | Nov 23 | No lab today! |
| 13 | Nov 27 | ||
| 13 | Nov 29 | Quiz 11 | |
| 13 | Nov 30 | Lab 12 | |
| BJ Chapter 9 | 14 | Dec 4 | More about Inheritance |
| 14 | Dec 6 | Quiz 12 | |
| 14 | Dec 7 | Lab 13 | |
| 15 | Dec 11 | wrap-up | |
| 15 | Dec 13 | Quiz 13 | |
| 15 | Dec 14 | Lab 14 Lab Exam: Thursday, December 14, 2006 | |
| 16 | Dec 18 | Quiz Redo (final exam): Friday, December 22, 2006, 12:30--2:30 pm |
home page:
http://elvis.rowan.edu/~hartley/index.html
e-mail:
hartley@elvis.rowan.edu