CMPS 109: Advanced Programming - Winter 1999


[Homepage] | [General Lab Info] | [TA's & Tutors] | [Supplements] | [FAQ's] | [Homework] | [Excellent Programs] | [Exams]

Final exam scores and course grade

Java

Contrary to what the catalog says, this course will teach objected-oriented programming using, Java, not C++.

Instructor Information

Office: AS 239
Hours: Tuesday/Thursday 10-11am
E-mail: charlie@cs.ucsc.edu

General Lab Information

This section contains general information about how to run the tools you will need for this class.

TA's and Tutors

This section contains information about the lab times and when the TA is available.

Lecture Supplements

This section contains additional information from the instructor to supplement the lectures. Materials will be added here as they become necessary.

FAQ's (Frequently Asked Questions): See if your question is here!

This section contains questions pertaining to programming which students frequently ask.

Exam Scores by Student ID

They will be posted here as they become available.

Required Text:

CMPS109 Reader Winter 1999.

Optional Books:

There are many good books on Java and object oriented programming.
I think "An Introduction to Object-Oriented Programming" by Timothy Budd, provides an excellent introduction to some additional object-oriented material.
A popular Java reference book is "Java in a Nutshell" by David Flanagan.

Evaluation:

A minimum of 50% on all three aspects of the grade is necessary but not sufficient to pass this class. This means, if you receive less than 50% on any one of the three parts (hw, quizzes, final), you will not pass, however, just because you score at least 50% on each part does not imply that you will necessarily pass. For example, someone that scored 51% on each of the three parts would almost certainly, NOT pass. The policy is intended primariliy to prevent students from "blowing off" the homework because it only counts 20% of the grade. You cannot pass this class if you do not do the homework.

Working Together: The graded programming assignments are to be done individually, not in groups. You should treat them as take home exams. You may freely give and receive help with the computer facilities, editors, UNIX, debugging techniques, the meaning and proper use of Java constructs, etc.. It is also perfectly permissible to discuss general approaches and algorithms with your classmates. However, copying any part of another person's program, or allowing your program to be copied is not permitted. An automatic program will be in use to detect copying. If you have any questions on this important point, please see me.

Ungraded practice assignments: In addition to the four graded programming assignments, there will be five, ungraded programming assignments. For these assignments you are free to work in groups or get whatever help you need. You are encouraged to try and complete the assignments on your own. The experience gained in completing these assignments will help you with the graded assignments and the exams, which must be solely your own work.

Academic Dishonesty: Any confirmed academic dishonesty including but not limited to copying programs or cheating on exams, will constitute a failure of the computer ethics portion of this class and result in a no-pass or failing grade.

Homework: Turn in homework by using the submit procedures. It will not allow late work. Late work will not be accepted or graded. The program should be submitted in whatever form it is in - grading is done not only on working code. Homework is graded in terms of it being done in a good style, being correct, being concise, being readable, and being efficient.

Quizzes: There will be a quiz every other Thursday.

Syllabus

Date Topic Reading
January 4-8 Basic Java Syntax Chapters 2-4
January 11-15 Objects Chapter 5
January 18-22 GUI's and Applets Chapter 6
January 25-29 Inheritance I Chapter 8 (8.1-8.6)
February 1-5 Inheritance II Chapter 8 (8.7-8.11)
February 8-12 More about AWT Chapter 9
February 18 (exchange day this week) Reading and Writing Files Chapter 10
February 22-26 Exceptions Chapter 11
March 1-5 Concurrent programming I Chapter 13 (13.1-13.4)
March 8-12 Concurrent programming II Chapter 13 (13.5-13.8)


[Homepage] | [General Lab Info] | [TA's & Tutors] | [Supplements] | [FAQ's] | [Homework] | [Excellent Programs] | [Exams]

This page maintained by Charlie McDowell. Email regarding this site.