World Wide Web Programming

Spring 1999 Syllabus

Instructor: Charles Webster, MD, MSIE, MSIS

Phone: 412 396-4772


Office: 433 Fisher Hall

Office Hours: Open (I'm around most afternoon and evenings, but email or call to be sure to catch me)

This course is an introduction to Java technology, hands-on and conceptual. You will write, modify, compile, and execute Java applications, applets, and servlets, while considering their relevance to a wide variety of technological, economic, and (yes) political issues. Since my interests are medical, many of my examples will be too.

Goals: The goals of this course are implicit in its above description. You will be able to write, modify, compile, and execute (simple) Java applications, applets, and servlets; read and understand articles about Java in information industry trade publications, and converse intelligently about them.

Typical class sessions will consist of my discussion and demonstration of a Java program, and your following along, at your workstation, to demonstrate the same, or related, behavior. You are encourage to conduct your own experimental modifications of code--we will spend a lot of time looking over each others shoulders.

This course is not intended to teach programming (how ever well you program before the course will be about how well you program after you take the course), nor is it intended to be a comprehensive introduction to the Java language. This course is simply intended to be the shortest possible distance to understanding, and using, Java as a kind of glue used during assembly of Web-based applications.

Textbook: Teach Yourself Java 1.2 in 24 Hours by Rogers Cadenhead (SAMS Publishing) and the World Wide Web.

Quizzes will be mostly hands-on creation and modification of Java applications, applets, and servlets, but will also require some short written essays on topics presented in class.

Grading: 25% a piece, Quiz 1, Quiz 2, Quiz 3, Java Project.

Your project will be a prototype Java application, applet, or servlet that is relevant to your industry; a five page paper about the evolution of Java use in your industry; and thoughts on how you might extend your prototype, given enough time and motivation. You also have the option of writing a longer paper (and a correspondingly shorter application, applet, or servlet), but only after consulting with me.

Each Hour N corresponds to a chapter in Teach Yourself Java 1.2 in 24 Hours. We will not cover all chapters. The last four classes will rely on handouts and links to Web pages.
Java Language Basics
January 14 Introduction and Course Overview
January 21
  • Hour 1 (Pages 12-15): Installing the Java Development Kit
  • Hour 2: Writing, Compiling, and Executing a Simple Java Application
  • Hour 4: Understanding (a little bit) How Java Applications and Applets Work
January 28
  • Hour 5: Variables, Expressions, Operators
  • Hour 7: Conditionals (If and Switch)
  • Hour 8: Repeating an Action with Loops
February 4
  • Hour 6: Strings
  • Hour 10: Creating and Inheriting from Objects
  • Hour 12: Extending and Using Existing Objects
February 11 Quiz
Java Applet Basics
February 18
  • Hour 13: Introduction to Applets
  • Hour 14: Using Threads to Improve User Responsiveness (that is, responsive to users)
  • Hour 16: Using Fonts and Colors in Applets
February 25 No Class
March 4
  • Hour 17: Working with Two Dimensional Graphics
  • Hour 19: Building A Simple User Interface with Swing
  • Hour 20: Responding to User Events with Swing
March 11 Spring Break
March 18 Building a Java-based Medical User Interface
March 25 Quiz
Java Servlet Basics
April 8 Java Server Pages
April 15 Java Servlets: Generating HTML
April 22 Java Servlets: Connecting to a database using JDBC
April 29 Building a Web-based Medical Application
May 6 Quiz, Project Due