Syllabus/Course Requirements CSCI 111
Programming and Algorithms I in Java
Prerequisite: One year high school algebra and strong computer skills or CSCI 101
Units: 3
Class Dates and Times:
Instructor: Anne Keuneke
Teaching Assistant: Phil Colbert (email questions should be sent through your Vista account for the course)
Office Hours: see http://www.ecst.csuchico.edu/~amk/foo/hours.html for current information
Office Phone: (530) 898-5998
email: amk@ecst.csuchico.edu
WWW Homepage: http://www.ecst.csuchico.edu/~amk
FAX: (530) 898-5995
Textbook Required:Java Software Solutions, 5th (or 6th) Edition - either one is fine
Lewis and Loftus,
Addison Wesley, 2009 (ISBN: 0-321-40949-3, ISBN-10: 0321532058, ISBN-13: 9780321532053)
Preferable Software to be Used: Java Compiler: Most recent Java JDK: get it free from SUN (netBeans, Eclipse, etc also have the SDK - these tools are optional) Java SDK, Eclipse and netBeans available for use in O'Connell.
Course Description:
Introduces the discipline of computer science, providing an overview of computer systems and their applications and an introduction to software design and programming, the software life-cycle, algorithms and their role in software design. Students will be expected to design, implement, and test a number of programs in Java.
3 hours discussion. 1 hour activity.
Topics:
Goals: By the end of the course, the student will:
Laboratory Projects: Seven (7) program design
and implementation assignments. Each student must do their own lab; team work is only allowed for discussion purposes. Labs that are equivalent in content will be given 0's and could result with an F in the course. CSUC's Academic Honesty policy.
Grade Evaluation Procedures:
Note: Failure in either the examination component or the programming component
will result in failure in the course.
Introduction of software engineering principles
Modularity, Encapsulation, Information hiding
Abstract data types (ADTs)
Object-oriented design
Introduction to Java programming
Data types and expressions
Classes
Methods and their parameters
Selections/decisions, repetitions, and arrays be able to exhibit a disciplined approach to problem solving,
algorithm development, and object-oriented program design
be able to write Java code with good style
be able to write readable, useful documentation to accompany programs
be comfortable with the software life-cycle
50% Assignments
25% MidTerm Exam
25% Final Exam
Midterm and Final may have extra points given. This is based on attendance.
Attendance is taken on random days. Percentage of days present during these days indicates the percentage of extra points one can receive.
It is highly recommended that you attend class regularly.