UNIVERSITY OF DELAWARE <br>
 DEPARTMENT OF COMPUTER AND INFORMATION SCIENCES
CISC 370---OOP, Java, and the WWW
Syllabus Spring 2000


Instructor and TA

B. F. Caviness, 448 Smith Hall, email: caviness@cis.udel.edu
Office Hours -- 1:30-3 Wednesdays and by appointment

Sivaram Burra, 214 Smith Hall, email: burra@cis.udel.edu
Office Hours -- 10-12Noon, Mondays
All TA office hours will be held in 404 Wolf Hall, Ph: 831-2770


Textbooks

Java is a hugh software system consisting of the Java language, the Java Virtual Machine (JVM), and the Java Class libraries or APIs. The latter are very extensive and powerful. Consequently, no one book will cover all that one desires to learn about this magnificient software. Thus it is really necessary to have a Java Library instead of a Java textbook (my personal Java library consists of several dozen books). I suggest that you start with the following three books.


Prerequisites

CISC 181 or a good knowledge of C++ and CISC 220---Data Structures.

Course Objectives

We will study object-oriented programming via the new computer language Java and look at both the WWW and other applications. Java is actually much more than a computer language. It consists of three key components:

To begin to use Java effectively, it is necessary to learn the Java language (syntax and semantics) and how to make use of the extensive Java class library packages. Most of the details of the Java Virtual Machine can be ignored in a first Java course, but they add much to the full understanding of the overall Java system.

Fortunately (for C/C++ programmers), the syntax and semantics of Java borrows heavily from C++, but are much simpler than those of C++ (hurrah!). So those parts of Java that are quite similar to C and C++, we will cover rapidly with an emphasis on the differences between Java and C++.

We will learn by doing and many of the programs that we write will be for applets that can be displayed on the World Wide Web. Thus, we will learn enough about the WWW and HTML to enable display of the applets.

This will be a seminar-like course. Participants will be expected to be well motivated and to actively participate in all aspects of the course, to be prepared to actively take part in the class discussions by asking questions, answering questions, and generally making a substantive effort to further the primary objective of the course --- that is, to learn as much about this exciting new technology as possible.

By mid-semester we should be able to do some interesting things in Java. The semester will finish with a term project (instead of a final exam) that will entail a substantial design and implementation of a Java application or applet.


Grades

Daily homeworks 45%
Programming and term project 45%
Class participation 10%

The TA, , will grade the daily homeworks. Prof. Caviness will grade the term projects. All grades will be posted online in a manner to be described later.


Tentative (very ambitious and subject to change) Schedule

Tuesday, Feb 8:First lecture, begin exploring for possible term projects
Lectures 1-4: H&C, vol I, chaps 1-4
Lectures 5-6: H&C, vol I, chap 5, Inheritance
Lectures 7-8: H&C, vol I, chap 6, Interfaces and Inner Classes
Lectures 9-10: H&C, vol I, chap 7, Graphics Programming & Printing
Lectures 11-12: H&C, vol I, chap 8, Event Handling
Tuesday, March 21:Initial term project proposals due
Lectures 13-14: H&C, vol I, chap 9, User Interface Components
Thursday, March 23:Initial term project proposals returned
Week of March 27 - March 31:Spring Break!
Lectures 15-16: H&C, vol I, chap 10, Applets
Lecture 17: H&C, vol I, chap 11, Data Structures
Lectures 18-19: H&C, vol I, chap 12, Exceptions and Debugging
Lectures 20-27: H&C, vol II, chap 1, Input and Output
H&C, vol II, chap 2, Multi-threading
H&C, vol II, chap 3, Networking
H&C, vol II, chap 5, Remote Objects
Tuesday, May 16:Last lecture
Fri, May 19 - Fri, May 26:Final Exam Week/Term Proj Presentations

Policies


Back to the CISC 370 homepage.

Corrections, suggestions and comments to caviness@cis.udel.edu

Last updated 1/18/01

Copyright 2000 B. F. Caviness