CS406 Topics in Computer Science
"Internet Programming with Java"

Roger W. Webster, Ph.D.
Department of Computer Science
Millersville University
This course will introduce the essential topics of
Internet Programming predominately with the Java programming language. Students
will design and write interactive WWW pages using Java, HTML, CGI, VRML
programming languages. Students will develop software that manipulates
different forms of data such as hypertext, graphics, video, and sound. Advanced
interactive/executable web pages will be developed.
Topics include: protocols, client-server model, html forms programming, cgi
scripting, Java programming and applications development over the net, Java
class methods, using the jdk/Javac, Java events, Java AWT, Java applets, layout
managers, image animation, Java threads, Java beans, and vrml applications
development. Creating executable content on the web will the main focus of the course.
Prerequisites:
CS362 or CS352
(Data Structures II) or permission from the Instructor.
·
Course Objectives:
The student who successfully
completes the course will:
- Understand how the
client-server model of Internet programming works.
- Be able to develop
software that performs automated data processing such as html forms data
to file and email systems.
- Understand how
Internet programming tasks are accomplished.
- Build Internet tools
that assist in automating data transfer over the net.
- Be able to write
software and develop interactive, client-side, executable web
applications.
- Be able to develop
Java Client-Server socket and thread applications
Course Outline
- . Introduction to
Internet Programming.
- Client <->
Server model
- Browsers -
Graphical and Hypertext Access to the Internet
- HTTP - HyperText
Transfer Protocol (how it actually works).
- . Creating Internet
World Wide Web pages.
- HTML - HyperText
Markup Language.
- headers, body,
html tags,
- tables
- Text, graphics,
sounds, video clips, multi-media
- Client side image
mapping.
- web page counters.
- HTML resources -
html converters and tools.
- HTML forms
programming.
- Building a form
- Text fields and
value, size, maxlength .
- html buttons,
radio, checkboxes, prechecked.
- Selection lists
- Introduction to
CGI scripting.
- Action and Method
- GET and POST.
- html form
interface with cgi scripts.
- Automating
processing such as info forms and email.
- Programming cgi
interfacing via forms.
- Creating
Interactive Executable Content - Intro to Java.
- How Java differs
from C
- Javac, Java, Java
class libraries, JDK, jdb
- Java Byte Codes.
- Classes and
Objects
- Applets
- Applet parameter
passing
- Class Variables.
- Class Methods.
- Object
construction and destruction.
- Control
Structures.
- Basic Windows,
mouse and buttons
- Events, the Java
event model.
- Basic I/O.
- Exception handling
- System properties
- JAR Files, Java
archiver.
- Advanced Java
Programming.
- Graphic User
Interface with AWT.
- AWT calls,
Windows, dialog boxes, pop-up menus.
- Graphics.
- Using a Layout
manager.
- Manipulating
Images.
- Image animation
- Threads - Process
Management.
- Socket programming
- client-server processing.
- URL Connections
- Java Beans.
- VRML - Virtual
Reality Modelling Language.
- basic vrml nodes
and primitives.
- Prototyping.
- vrml animations.
- interactivity and
manipulation of 3D objects.
- Interpolators.
- ROUTEs.
- Events.
- Sensors ->
touch, time, sphere.
- vrml scripting in
Java and Javascript.
- vrml converters.
- Additional Topics -
(if time allows).
- Browser
Considerations.
- Java Utilities.
- Security issues.
- JDK tools.
Resources:
Equipment: The Department of Computer Science Unix
laboratory and CSPC lab facilities are Java-ready, and completely connected to
all Internet resources and can be used for this course.
Suggested Texts:
- Deitel and Deitel.
"Java - How to Program", Addison-Wesley Press, Reading, Mass.,
1998,
- David Flanagan. "Java in a
Nutshell (Java 1.1)" , Second Edition, O'Reilly and Associates
Publishing, Sebastopol, CA, 1997.
- David Flanagan. "Java Examples in a
Nutshell (Java 1.1)", O'Reilly and Associates Publishing,
Sebastopol, CA, 1997.
- David Flanagan. "Java in a Nutshell (Java 1.0)",
First Edition, O'Reilly and Associates Publishing, Sebastopol, CA, 1996.
- David M. Geary."Java - Mastering the AWT (Java
1.1)", SUN Soft Press Publishing, Mountain View, 1997.
- Larry Wall and
Randall Schartz. "Programming
Perl", O'Reilly and Associates Publishing, Sebastopol, CA, 1994.
- Scott Oaks and Henry
Wong. "Java Threads",
O'Reilly and Associates Publishing, Sebastopol, CA, 1997.
- Gary Cornell, Cay
Horstmann. "Core Java", SUN Soft Press Publishing, Mountain
View, 1996.
- S. Gundavaram.
"CGI Programming on the World Wide Web", O'Reilly and
Associates Publishing, Sebastopol, CA, 1996.
- Swartz, Randall.
"Learning Perl", O'Reilly and Associates Publishing,
Sebastopol, CA, 1993.
- Jed Hartman and Josie
Wernecke. "The
VRML 2.0 Handbook, Building Moving Worlds on the Web",SGI, Inc.
and Addison Wesley, Reading, Mass. 1996.
- Rikk Carey and Gavin
Bell, "The
Annotated VRML 2.0 Reference Manual", SGI, Inc. and Addison
Wesley, Reading, Mass. 1997.
- Mark Pesce,
"VRML - Browsing and Building Cyberspace - The Definitive Resource
for VRML Technology", New Riders Publishing, Indianapolis, IN, 1995.
Other materials, conference proceedings, and journal articles may be handed out
during the class.
Back to cs406 Internet
Programming with Java