[Home] [Syllabus] [Assignments] [Resources]
While I will do my best to update the web site according to changes, it is a student's responsibility to keep track of the problem set due dates and reading assignments. If you are not sure about due dates, please don't hesitate to ask.
Both the midterm and the final exams are open book, open notes.
Note that the date for the midterm exam is set and will not change. If you have a conflict with this date, please let me know right away.
All reading is from Stephen J. Chapman "Java for Engineers and Scientists ", Second Edition, unless specified otherwise.
|Week 1: January 12 -- January 16|
Introduction. Computer programs, compilation and interpretation.
Reading: Ch. 1.
|Java applets and applications. Syntax of a program. Data representation in a computer, numbers, expressions.||
Print statements, displaying images. Compiling and running simple Java
Problem set 1 posted: modifying simple Java programs. Due Friday, January 23rd
|Week 2: January 19 -- January 23|
|Martin Luther King Jr Holiday -- no class||
Java types, variable declarations, assignment statements.
Reading: Ch. 2 except 2.3, 2.7, 2.8.2.
Arithmetic expressions. Reading data in a Java application. Lab on
Problem set 1 due
Problem set 2 posted: arithmetic calculations in Java. Due Friday, January 30th.
|Week 3: January 26 -- January 30|
Java classes, objects, methods. Void methods and those
returning a value. Creating objects, using methods. Passing parameters
Reading: 2.3, Ch. 8 (up to 8.4 only).
Java APIs and libraries. Java classes
Lab on using pre-defined Java classes.
Problem set 2 due
Problem set 3 posted: working with pre-defined Java classes. Due Friday, Feb. 6th
|Week 4: Feb. 2 -- Feb. 6|
Relational operators. Boolean type, boolean expressions. If/else
Reading: 2.2.3, Ch. 3.
|Examples of if/else statements. Scope of variables in inline blocks. Switch statement.||
Lab on if/else statements.
Problem set 3 due
Problem set 4 posted: if/else statements. Due Friday, Feb. 13th.
|Week 5: Feb. 9 -- Feb. 13|
Reading: Ch. 4.
|Examples of loops, nested loops. Debugging a program with infinite loops.||
Lab on loops.
Problem set 4 due
Problem set 5 posted: loops. Due Friday, Feb. 20th.
|Week 6: Feb. 16 -- Feb. 20|
Arrays. Array representation.
Reading: Ch. 5 (up to 5.4 only), lecture notes on vectors.
|More examples of arrays. Passing arrays to procedures and methods.||
Problem set 5 due
Problem set 6 posted: arrays and vectors. Due Friday, Feb. 27th.
|Week 7: Feb. 23 -- Feb. 27|
Structure of a class. Defining your own classes, writing methods and
Reading: Ch. 6, 7 (up to 7.5).
|More on methods; recursion.||
Lab on writing methods.
Problem set 6 due
Problem set 7 posted: writing your own methods and procedures; recursion. Due Friday, March 19th.
|Week 8: March 1 -- March 5|
|Review for the midterm exam.||Midterm exam. Covers material up to Friday, Feb. 27th.||
|March 8 -- March 12: SPRING BREAK, NO CLASSES|
|Week 9: March 15 -- March 19|
Inheritance. Access modifiers (private, protected, public).
Reading: Ch. 7.6, 7.7, Ch. 9.
Polymorphism. Generic programming. Vectors revisited.
dispatch. Type wrappers for primitive types.
Problem set 7 due
Problem set 8 posted: inheritance, use of vectors. Due Friday, March 26th.
|Week 10: March 22 -- March 26|
More on Java pre-defined classes:
Java graphics. Example: displaying a drawing on an applet.
Reading: Ch. 12.
|More on understanding APIs: drawing shapes and displaying text. Lab on Java graphics.||
Graphical User Interfaces
(GUI). Java Swing package.
Reading: Ch. 13.
|Week 11: March 29 -- April 2|
Stages of software development. Project overview.
Reading: Ch. 11.
Problem set 8 due
Problem set 9 posted: Project, part 1; Java graphics. Due Friday, April 9th.
|More on project components: Java events, event handlers.||
More on GUIs, event handlers.
|Week 12: April 5 -- April 9|
Overview of other GUI components.
Reading: Ch. 14.
|Project questions and answers.||
Program control: error handling, Java exceptions.
Reading: Ch. 10.1
Problem set 9 due
Problem set 10 posted: Project, part 2; Java exceptions. Due Friday, April 16th.
|Week 13: April 12 -- April 16|
Reading: Ch. 2.8, 5.5, 10.2, 16.1-16.4; 8.6.
|Project questions and answers.||
Formatting input data; String tokenizers.
Problem set 10 due
Problem set 11 posted: Project, part 3; File I/O. Due Monday, April 26th.
|Week 14: April 19 -- April 23|
"Packaging" a software product; Applets on the Web.
Reading: Ch. 15, 7.9.
|Creating your own packages.||
|Week 15: April 26 -- April 30|
Memory allocation and management. Java garbage collection, finalizers..
Problem set 11 due
|Comparison of Java with C, C++.||Review and wrap-up.|
|Final exam: Friday, May 7th, 4-6pm|
The views and opinions expressed in this page are strictly those of the page author. The contents of this page have not been reviewed or approved by the University of Minnesota.