3 credits, index 6412, Spring 1997, certain saturdays from
9-12:00 & 1-3:00 (see
schedule),
5074 Haycock Rd., Falls Church, VA 22042 (Links to Fall 1996 offerings: Falls
Church section and Blacksburg
section.)
23 January 1977: The class will meet in room 110 this Saturday
and for all meetings (both in person and via VTEL) thereafter.
23 January 1977: If you already purchased the first edition
of the "Core Java" book and are unable to return it, it is not
necessary to buy both editions. The material missing from the first edition
can be replaced by material accessible on the web. The material missing
from the first edition is on Remote Method Invocation (RMI), the database
connectivity (JDBC), and a review of future technologies.
21 January 1997: The Second Edition of the "Core
Java" book should be purchased for the Java part of the class. This
edition is available at the Borders bookstore.
Class will meet in room 113 due to growing class enrollment. (No class
meetings will be in the PC lab, as listed on the original course schedule,
because the PC lab is too small.)
The bookstore failed to order the textbooks
for CS6204, even though the order was placed on 2 December 1996. Hence
you will be unable to purchase the texts prior to class. Note that we will
be using the 2nd edition of the Lincoln Stein book, not the first
edition that was used in the Fall 1996 version of CS6204. Also, you should
only purchase the three texts listed in the textbook
list of the syllabus (Don't buy the Java in a Nutshell book,
which was used last semester).
WWW Notes (for abrams) are accessed by clicking on topic names in the
meeting schedule
Guides to Using UNIX (e.g., your actor.cs.vt.edu
account)
Minimalist UNIX,
a short introduction to first-time users of UNIX. Some items are specific
to DECstations and DEC alphastations - just ignore that information.
Robert Evans, The
UNIX Shell Commands Reference Card, Univ. of Wales. Provides a good
overview and is very much like what you might read in in introductory text.
Assignments (from Abrams)
Due 15 March 1997:
Read Chapter 1, 2, 5, 6, and 7 in the Stein text. Answer the following
questions. Write your answers in the form of an HTML file, and send the
file to abrams@vt.edu with a subject
line of "CS6204 - HW1". (Submitting the file as HTML will give
you a little practice in using HTML. If you're an expert already in HTML,
try using some advanced HTML features to spice up the design of your document.)
Find examples of what you would consider well designed and poorly designed
web pages. Explain why you consider each page to be well and poorly designed.
Be sure to give the URL of each page in your answer. (In fact, make the
URL an anchor using the <A> ...</A> tags so that I can click
on it when reading it!) Don't write more than 500 or so words.
Chapter 7 in the Stein book discusses "hyperspace compass,"
"navigation bars," and Web site organization. Find examples of
three different navigational aids or site maps on Web pages. Include the
URL of Web pages that use the three, and comment briefly on whether they
are effective.
Page 46 in Stein shows you how you can "pretend" you are
a Web browser and actually fetch a document using a telnet session. Do
the same, and fetch the Web page you are reading now. Turn in a transcript
of your telnet session, showing what you typed and the returned Web page,
in the most convenient fashion (e.g., hardcopy of a screen dump, or cut
the text from your telnet session and paste into your HTML document solving
homework 1).
Due by last day of classes (Wed., 7 May):
You must complete a Web page design project. You might redesign a set of
Web pages for your company, or you might create a new set of Web pages.
If you're looking for Web pages to redeisgn, then click
here for a list of clients. Please send email to abrams@cs.vt.edu
with a proposal of what you'd like to do. Your proposal, when approved,
will be noted on a list
of redesign projects.
Due by last day of classes (Wed., 7 May 1997):
Install a Web server, either on a computer at work, or at home, or on actor.cs.vt.edu.
Arrangements will be made for the instructor to try accessing your Web
site to insure completion of this project. Click
here to view the assignment.
Assignments (from Kafura)
Due March 22, 1997:
Design and implement a Java applet of your own choosing. Some guidelines
and suggestions are given below to characterise the complexity of the applet
that would be appropriate. You are encouraged to think about an applet
that might be useful in your own work or professional environment.
The applet should have the following characteristics:
1. the applet should use a significant protion of the AWT library.
2. the applet should perform a realistic and useful function.
3. it should reflect a level of effort consistent with a graduate level
course.
Here are some examples of possible applets. These example are given as
illustrations and not meant to be a restrictive list from which you select.
While you may implement one of these applets, you may also use these as
guides or as starting points for defining your own applet.
1. minesweeper - a common DOS/Windows game that involves simple
graphics and user interaction
2. equation manipulator - the user selects (from a list or a panel
of buttons) an equation type (linear, quadratic, trigonometric,...). They
then see an equation of that form drawn in a canvas along with the equation
parameters in editable text boxes. For example, if the user selected a
quadratic equation they would see editable text boxes labelled a,b and
c for the constants in the equation ax**2 + bx + c. The user can either
change the values of a, b, and c and see how this affects the shape of
the displayed equation or the user can "grab" the equation and
move/reshape it and see how the constants change. Given the time constraints
of the class, only one of these two modes might be implemented.
3. Papy's minicomputer - this is used in grades 3 and 4 to teach
mathematics concepts. Each digit in a decimal number is represented by
a 2x2 grid. Each grid square corresponds to one of the numbers 1,2,4, or
8 as shown in this drawing:
Each grid square can hold a "checker". Placing checkers on grid
squares represents a decimal number. Here are some examples for single
digit numbers:
For larger numbers, each digit is represented by its own 2x2 grid. Here
are example of two digit numbers:
The minicomputer applet could run in one of two modes: (1) either the student
would be given a number and asked to place the checkers and push a button
when done (the applet would then give feedback on whether the placement
was correct or incorrect), or (2) the student could place the checkers
and ask what number that placement represents.
4. Creative Challenge - design an applet for our class! it could
be an eye-catching "advertising" applet about the class or a
neat way to index into the course materials.
Send comments to abrams@vt.edu.
[This is http://ei.cs.vt.edu/~jwww/spring.97/index.html.]