Winter Term, 2006
This document was last modified on Monday, 16-Apr-2007 20:43:13 MDT
Course
Description and Regulations
Instructor — Office Hours, Contact Information
Percentage to Alpha Grade Conversion Chart
Expectations regarding Attendance and Course Work
Textbook
Student Companion Site
This site includes:
source code for textbook example programs
solutions to odd-numbered exercises
lecture slides (downloadable in ZIP archives)
Appendices E–N
programming style guide (an online version of Appendix A)
compiler help
textbook errata ("bug list")
FAQ
link to the author's web site
Lab 1
(assigned January 19, due by January 26)
[large]
Lab 2
(assigned January 26, due by February 2)
[large]
Lab 3
(assigned February 2, due by February 9)
[large]
Lab 4
(assigned February 9, due by February 16)
[large]
Lab 5
(assigned March 2, due by March 9)
[large]
Programming Assignment 1
(due before midnight on Tuesday, March 21)
[large]
Programming Assignment 2
(due before midnight on Tuesday, April 4)
[large]
NOTE: A lab exam will be held during the scheduled lab session on April 6. You will be given a relatively simple problem at the start of the lab exam, and will have to solve the problem in Java and submit your solution by the end of the lab period. No communication with other students will be allowed, but the exam will be an open book exam (i.e., you may bring your textbook and other print resources to the lab, and you may consult your solutions to previous lab exercises electronically on the network drive).
Programming Assignment 3
(due before midnight on Thursday, April 13)
[large]
Your assignment submissions are password-protected. These passwords apply only to form data submitted via the Web server. They are separate from (and typically different from) your Augustana CCID password.
Your web-based file submission account will have been created using your Augustana student ID number as the initial password (8 digits, with no spaces or hyphens). To change your Web password, press the following button:
Chapter 1: Introduction
slides
all-in-one
Chapter 2: Using Objects
slides
all-in-one
Chapter 3: Implementing Classes
slides
all-in-one
Chapter 4: Fundamental Data Types
slides
all-in-one
LogBaseTwo.java — a program to demonstrate how to calculate a base-2 logarithm from the natural logarithm calculated by Math.log() [plain]
TestRound.java —
a program to demonstrate the difference between truncation and rounding of a real number to an integer.
[plain]
Be sure to try this with negative numbers as well as positive reals.
Chapter 5: Programming Graphics
slides
all-in-one
Chapter 6: Decisions
slides
all-in-one
Chapter 7: Iteration
slides
all-in-one
Chapter 8: Arrays and Array Lists
slides
all-in-one
Chapter 9: Designing Classes
slides
all-in-one
Chapter 10: Testing and Debugging
slides
all-in-one
Chapter 11: Interfaces and Polymorphism
slides
all-in-one
Chapter 12: Event Handling
slides
all-in-one
Chapter 13: Inheritance
slides
all-in-one
Chapter 14: Graphical User Interfaces
slides
all-in-one
Chapter 15: Exception Handling
slides
all-in-one
Chapter 16: Files and Streams
slides
all-in-one
Chapter 17: Object-Oriented Design
slides
all-in-one
Chapter 18: Recursion
slides
all-in-one
Chapter 19: Sorting and Searching
slides
all-in-one
Chapter 22: Generic Programming
slides
all-in-one
Download Java 2 Platform Standard Edition 5.0 –
select either "NetBeans IDE + JDK 5.0 Update 6" or
"JDK 5.0 Update 6"
Java documentation:
GNU Source-highlight –
convert Java source code to HTML (and other markup formats) with key word highlighting
JMol applet (see Chapter 1)
TextPad — a shareware Windows-only editor with integrated support for compiling and running Java programs.
Due to its simplicity, this is the recommended editor for this course.
Eclipse — a free, open-source, cross-platform integrated development environment.
Eclipse has many features that assist in the development of Java code, but may be daunting for
a beginning programmer; I recommend that you start using it in your second year instead of this semester.
BlueJ — an interactive Java environment that emphasizes inspecting classes and objects rather than
the edit - compile - run cycle.
For help on using TextPad, Eclipse, and/or BlueJ with the Java Concepts textbook, see Cay Horstmann's Java Compiler Tutorial
NetBeans — a free, open-source Java development environment by Sun.
For help on using NetBeans with the Java Concepts textbook, see Cay Horstmann's NetBeans help page
JCreator — a Windows-only Java development environment;
JCreator LE ("limited edition") is available for free.
For help on using JCreator with the Java Concepts textbook, see Cay Horstmann's JCreator help page
Thinking in Java, a local copy of the
HTML version
of a book by Bruce Eckel which he
makes available for free download,
even though it is also available for sale in hardcopy (the 3rd edition was published by Prentice-Hall in 2002,
ISBN: 0131002872, available through
Chapters or Indigo Books and elsewhere; the 4th edition, which will include discussion of Java generics,
is due out in February 2006). If you download the full book (in PDF, Word, RTF, or text format),
DON'T PRINT IT ON AN AUGUSTANA PRINTER!
Introduction to Programming Using Java by David J. Eck
Introduction to Java by Dan Joshi, from
Web Programming Unleashed
Understanding Java I/O Facilities by Joseph Bergin, Pace University
Sample mid-term exam (PDF format) — not all the terms and concepts covered in this exam have been studied yet in this year's offering of CSC 120
Copyright © 2004, 2005, 2006 Jonathan Mohr