CS 110: Introduction to Programming in Java

Kalamazoo College

Spring 2003

SYLLABUS

Instructor:   Alyce Brady
abrady@kzoo.edu
Olds-Upton 203G, 337-7065

Course Web Site:   http://max.cs.kzoo.edu/cs110/


This course provides an introduction to object-oriented programming using the Java language. We will focus on the basic features of the Java language and the fundamentals of the programming process, including design, implementation, and testing. Hands-on programming is a central component of the course, embodied in weekly labs and frequent programming assignments.

Required Text: Horstmann, Computing Concepts with Java Essentials, third edition, John Wiley & Sons, Inc., 2003.
You must also purchase a lab manual for this course from the bookstore.

You are strongly encouraged to purchase a ZIP disk to save your work on. You can store and run your programs directly from this disk. With an ordinary floppy disk, you will need to transfer files in and out of the Temp folder on the machine you are working on.

You can find other references in the class bibliography.

Prerequisite:   CS 105 (Introduction to Computer Science) or previous programming experience.


Computing Resources and Software:


Topics to be covered (and approximate course schedule):

Week 1: Simple Java Statements; Introduction to Objects, Classes and Methods
Week 2: Selection Statements; Conditions; Loops
Weeks 3 - 4: Arrays; Implementing Classes
Week 5: Search Algorithms; Midterm Exam; Introduction to MBS Case Study
Week 6: Object-oriented design; Testing and Debugging
Week 7: Interfaces; Inheritance; Dynamic Binding
Week 8: Scope; Sorting
Weeks 9 - 10: Applets; Graphical User Interfaces; Course Review
Exam Week: Final Exam


Grades:

Grades will be based on:
Attendance and Class Participation 10%
Laboratory Assignments 20%
Programming Projects 30%
Examinations 40%

Attendance and Participation:

Regular attendance and fully engaged participation is expected of all students in this course and will affect your grade. Active participation means being on time, being prepared, listening to others, contributing ideas of your own, and asking questions as they come up. Furthermore, attendance is absolutely required for the weekly labs.

Assignments:

Assignments, announcements, class notes, and other material will be made available on the course web site:
http://max.cs.kzoo.edu/cs110/
Students are responsible for checking this resource frequently.

Reading assignments and discussion questions or exercises may be assigned for each class. You are expected to come to class having completed the assignment and being prepared to discuss both the ideas from the reading and your solutions to any exercises. You should also bring questions you have from the reading to class.  You are encouraged to work on the discussion questions and exercises in groups; just be sure that each group member understands each answer well enough to present it to the class.

Most laboratory assignments will be completed during the weekly lab time, although some may be due the next day. The programming assignments will be more complex, and may take a week or longer to complete. The time required to write a program and debug it is difficult to predict, but time-management skills are as critical in industry as they are in college. I will make programming assignments available online enough in advance that you will have some flexibility in scheduling your work, but you are responsible for budgeting your time wisely so that you will be able to complete your projects on time. Assignments that are turned in late will receive only partial credit unless you clear it with me in advance.

Programming Guidelines:

Two documents, the CS Program Style Guide and Documentation Standards, describe the programming style and documentation standards for this course. Following these standards is an important step towards writing well-structured and reusable programs. You may use two templates that have been created to help you meet the documentation standards: the class template and main class template.

The CS Program Style Guide also provides a general description of the grading criteria used in this course.

Collaboration and the Honor System:

This course operates in accordance with the principles of the Kalamazoo College Honor System: responsibility for personal behavior, independent thought, respect for others, and environmental responsibility. In particular, academic integrity is a fundamental principle of scholarship. Representing someone else's work as your own, in any form, constitutes academic dishonesty. Unauthorized collaboration and receiving help from others outside the bounds permitted by the instructor are also violations of the College honor code. You are responsible for working within the permitted bounds, and acknowledging any help from others or contributions from other sources.


Any student with a disability who needs an accommodation or other assistance in this course should make an appointment to speak with me as soon as possible.


This page is maintained by Alyce Brady(abrady@kzoo.edu) and Pamela Cutter (pcutter@kzoo.edu). It was last modified on March 28, 2003 .