Syllabus:

General course information

Mandatory Text:

Introduction to Java Programming: Fundamentals First (Sixth Edition)
Note: If you already own the Fifth Edition you can use it for this course
Note: You do not need the comprehensive edition
By Y Daniel Liang
Published by Prentice Hall, 2007
ISBN: 0-13-223738-5 (ISBN13: 978-0-13-223738-3)

Supplemental Course Materials

Course Summary

Course Description: This is the honors section of a first course in computer science, using Java, an object oriented language. The honors section will cover more topics than the regular section classes and therefore will move at a faster pace. You do not need to have experience with Java, but basic knowledge of some programming language is required. You should be familiar with the following concepts, in any of C, Java or Pascal:

Students without programming experience should take the more introductory course -- V22.0002.

Grades: Your grade will be the on the programming assignments, a midterm examination, and a final examination. The programming assignments (and possible quizes) will count for 30% of your grade, the midterm exam will count for 30%, and the final exam will count for 40%.

Class mailing list: Please join the class mailing list, using your real name, not an alias. All important annoucements will be sent to the class mailing list.

Cooperation, Acknowledgments and Cheating: You are expected to do your own work. It is fine, in fact often very helpful, to work cooperatively with other students, but the work you submit should be your own. If you get an idea from another student, or from a tutor, that you use in your work, this is OK, but you must acknowledge that person in the program comments. When you turn in an assignment, you are saying that you have done this work yourself. See the Computer Science Department's Academic Integrity statement. Disciplinary action will be taken against those who violate the rules.

Students who spend little time on the homework invariably do poorly on exams and end up with a poor final grade.

Topics: We will cover most of the topics in the text, probably with the exception of Chapter 18. Not everything will be covered in class, but you will be expected to read most of the book. There will also be some additional topics that are not in the text. The goal is not to teach you everything in the Java language, but to have you become good Java programmers. Programming is not easy and becoming a good programmer is a learning process not unlike becoming a good writer. It needs patience, logical thinking, lots of practice, and the willingness to seek out help when necessary and learn from the responses to your questions.