- Instructor:
- Don Smith, 1409 Dept. of Computer Science,
email: dsmith@cs.sunysb.edu,
phone: 632-1522.
- Office Hours:
- Mon and Wed 1:00pm - 2:00pm and by appointment.
- Lectures:
-
MWF 9:25- 10:20 |
Engineering 145 |
Secs 1-6 |
MWF 10:30- 11:25 |
Engineering 145 |
Secs 7-12 |
It is essential that you attend lecture.
- Prerequisites:
- A grade of C or better in CSE 114 or a passing grade for its proficiency
exam.
- Course web page:
- Important notices (such as corrections to assignments),
copies of assignments, hints, and other course materials
will be available at the course web site, at
http://www.cs.sunysb.edu/~cse214
You should bookmark
http://www.cs.sunysb.edu/~cse214/README214
and check it often,
since I will be placing important messages at the start of that file.
- Course directory:
- Other course material, such as programs, will be available on
sparky.ic.sunysb.edu in /users/home/cse214/.
- Recitation:
- Recitations start the week of Sept 11.
Click here
to see the recitation times and locations (per section) as of Tuesday, Sept 5.
Visit
http://notes.cc.sunysb.edu/Prov/registrar.nsf/pages/courses
for up-to-date
recitation times and locations. (Click on "Course Schedule Menu" and
then enter the course info: CSE, 214, Fall. Then click on Submit Query.)
- Textbooks:
Required:
- Data Structures and Other Objects Using Java
by Michael Main
ISBN 0-201-35744-5, Softcover, 800 pages, 1999.
Available at bookstore.
Make sure you keep up with the readings, as indicated by the schedule below.
Recommended:
-
Java: How to Program by Deitel & Deitel,
Prentice Hall (Third Edition). Thorough coverage.
-
Teach Yourself Java 2 Platform
by Laura Lemay and Rogers Cadenhead, Sams Publishing.
- Course Outline:
This course introduces data structures, algorithms, and
(object-oriented) software
engineering concepts.
Small to medium sized programs
will be developed using the Java programming language.
Topics include: abstract data types,
preconditions and postconditions,
recursion and iteration,
object-oriented programming, linked lists,
stacks and queues, big O notation, concepts in analysis of
algorithms, sorting and searching,
binary trees, heaps, hashing, and balanced trees.
- Course Grades:
- Approximate weighting for grades:
- one or two quizzes
- 10% - 15% combined;
- two midterm exams
- 25% combined;
- one final exam
- 25%; and
- five programming projects
- 35% - 40% combined.
The first quiz is scheduled; there may be a second, surprise quiz.
Students must receive passing grades on the combined
average of quizzes, tests, and the exams in order to
pass the course. That is, a passing grade will not be awarded
only on the basis of outstanding programming work.
Incomplete (I) grades will not be given in CSE 214 except
in the most extraordinary cases.
Quizzes and exams will cover material from the lectures,
textbook, and homework. If you skip lectures, readings or
assignments, your performance on quizzes and exams will probably suffer.
- Homeworks:
Homework projects will, in part, involve development of programs
in areas such as web programming, game playing, and (small) database access.
Students should become proficient at using basic Unix facilities and
at using standard Java libraries and language features.
Homework projects must be handed in electronically by 10PM on the due date.
See
http://www.cs.sunysb.edu/~cse214/Fall/handin.html for instructions on handing in
assignments electronically.
Some general guidelines for homework submissions.
- All files should be in ASCII (no Word, Wordperfect, etc).
- Make sure all your files are protected so that other students can't steal your
answers. If substantially similar work is submitted by multiple students, all students
involved risk receiving low grades or worse. Use a Unix command like
chmod og-rwx 214
to protect all files in directory 214 from viewing by others.
- Make sure you document your program. Try following the
documentation guidelines presented in the textbook.
-
An important note on program testing and grading. For each program,
build in test cases so that your grader can judge whether your program
works. Either allow the user to enter new test data, or (better yet),
build in a file of test cases(or a menu that selects test cases). It's
your obligation to convince your grader that your code works.
For example, if your program processes a list, build in several lists
to test, including an empty list, a list of length one, and several longer lists.
- Submit by 10:00 PM on the day due. (It would be cruel and foolish to make the deadline midnight.)
You are allowed one late submission (up to four days after the deadline) per semester.
It's OK to submit partial answers; just specify what parts you did and didn't finish.
- Re-grading:
- For re-grading an assignment or exam, please meet with the person (instructor or
teaching assistant) responsible for the grading. Please try to arrange a re-evaluation within one week
of receiving the graded work. All such requests that are later than one week from the date the graded
work is returned to the class will not be entertained.
- Academic Dishonesty:
You are encouraged to work and study with
your classmates. You can discuss homework or recitation problems with your classmates in
order to understand what you are being asked to do. HOWEVER, you must work on the actual
solution on your own. All work you submit for homework, projects, or exams MUST be your
own work. This is the only way you will learn the skills of programming and program
design. If you cheat or aid someone in cheating knowingly, you can automatically fail this
course and be brought up on charges of academic dishonesty without warning.
(Each semester several students are caught and prosecuted!)
PLEASE NOTE:This semester, all submitted
programs will be checked using online tools for similarity in design and documentation.
Remember, all programming work MUST be your own work. It should not be somebody else's
design or a team-work effort. Students submitting programs that are identical or nearly
identical can fail this course immediately without warning. DON'T DO IT!
- Disability:
- If you have a physical, psychological, medical or learning disability that may impact on
your ability to carry out assigned course work, I would urge that you contact the staff in the Disabled
Student Services office (DSS), Room 133 Humanities, 632-6748/TDD. DSS will review your concerns
and determine, with you, what accommodations are necessary and appropriate. All information and
documentation of disability is confidential.