This class is an introduction to programming and algorithm development, using the Java programming language. We will cover primitive types, strings, arrays, methods, and structured programming. We will then move on to cover the basics of object-oriented programming including classes and objects.
Essential Information:
Instructor: Erik Steinmetz E-mail: steinmee@augsburg.edu Phone: (612) 330-1062 Office: Sverdrup 203A Class: Monday, Wednesday, and Friday from 9:10 a.m. to 10:10 a.m. in Sverdrup 204 Lab: Thursday from 1:30 p.m. to 3:00 p.m. in Sverdrup 204 Dates: 17 January through 27 April, 2007 Text: Java Program Design 5.0; Cohoon & Davidson Optional Reference Text: Java in a Nutshell (5th Ed.); Flanagan Office Hours: Monday, Wednesday and Friday from 1:00 p.m. to 2:30 p.m. Grading
There will be a mid-term and a final exam during the course, each counting for 30 percent of the grade. Graded homeworks will make up the remainder of the grade. All homeworks must be completed individually, though you may share and seek coding advice from others.
Schedule
Date Topics Chapter Week of 17 January Intro, Java Basics, Compiling and Running programs Nutshell 1, 2; Cohoon 1 Week of 22 January Basic Data Types, Operators Nutshell 2, Cohoon 2 Week of 29 January Decision and Iteration Nutshell 2, Cohoon 5, 6 Week of 5 February Iteration and Functions Nutshell 2, Cohoon 7.1, 7.2, 7.5 Week of 12 February Arrays Nutshell 2, Cohoon 8.1 through 8.4 Week of 19 February Multi Dimensional Arrays Nutshell 2, Cohoon 8.8 Week of 26 February Review and Mid-Term Week of 5 March Objects and Classes Nutshell 3, Cohoon 3, 4 Week of 12 March
(No class on 16 March)Building Classes Nutshell 3, Cohoon 4 Week of 26 March Instance attributes and methods, Class attributes and methods Nutshell 3, Cohoon 4 Week of 2 April Inheritance: How to make subclasses Nutshell 3, Cohoon 9 Week of 9 April Inheritance. Use of files Cohoon 9, Cohoon 6.5 Week of 16 April Recursion Cohoon 11 Week of 23 April Some GUI stuff. Events. Review Assignments
Assignment Date Due Sample Solutions Assignment Zero 19 January, 2007 Assignment One 31 January, 2007 Assignment Two 7 February, 2007 Assignment Three 14 February, 2007 Assignment Four 26 February, 2007 Assignment Five 15 March, 2007 Assignment Six 4 April, 2007 BankAccount.java
Bank.java
BankDriver.javaAssignment Seven 13 April, 2007 Assignment Eight 18 April, 2007 Assignment Nine 25 April, 2007 Assignment Ten 27 April, 2007 Exam Schedule
The mid-term will be held during the lab on 1 March, 2007
The final will be held on Monday, 30 April, 2007 from 8:00 a.m. to 10:00 a.m.
Class Links
For Linux, Solaris, and Windows, you may download the free Java Development Kit (JDK) from Sun's web site. For Mac OS X, you can compile and run Java from the command line, or use XCode (or ProjectBuilder) which comes on the Developer Disk. The Mac boxes in Sverdrup 204 and the Linux boxes in the linux lab all have Java installed.
Some hints and .bat files for compiling and running Java under the Windows operating system.