Web Programming
COSC 436/592
(TTh 9:30-10:45, PH302)
Instructor: Matt
Evett ; Dept. Computer Science; room 512E Pray-Harrold
Tel: 734-487-1227; e-mail: mevett@emich.edu;
http://www.emunix.emich.edu/~evett
Office Hours: See my page for hours
I try to maintain an "open door policy": you are welcome to drop by
at times other than office hours, and generally I'll be able to talk to you, but
sometimes I may be too busy.
Make sure you register for the web caucus
for this course (cosc436_evett). There are announcements there for the assignments!!
The caucus is the official mechanism for distributing information about the
course. All students in the class are required to register for that caucus.
To do so you will need an EMU e-mail account. This is free. If you don't already
have one, go the the Halle library and get one.
Programming Environment
This is a project-oriented, upper-division level course. We will be doing a
fair amount of programming in a Linux environment, using different software
tools, including: Java, Perl, PHP, MySQL, Apache, etc. We will be learning how
to install Linux on your PC, allowing you to start your PC either in Windows
or Linux.
For Java coding, I would suggest using one of the many free commercial IDEs,
such as JBuilder (Here
are instructions for how to install JBuilder on your computer at home),
SunONE Studio (formerly Forte) (Sun's
download page is here), etc., or Eclipse.
The department also maintains a Linux box that you will be provided an account
on, so that you can complete the assignments even if you don't have a PC at
home, and so that you will be able to demo your assignments here.
Lecture Notes
- Source
code from Sebesta's book (and here's the
source zipped up)
- Introduction to HTML and Cascading
Style Sheets
- Lecture slides for chapter 3 (HTML).
- Lecture slides for chapter 4 (javascript).
- Lecture slides for chapter 5 (html & javascript)
- Lecture slides for chapter 6 (dynamic html via
javascript)
- Javascript
events
- Dr. Sverdlik's Javascript examples
- Learning Java. All the code from the lectures can be browsed here,
or you can download all of it here
and here.
- What to do if you are having
trouble running your applets.
- Here is an example of Perl session, illustrating some of the basic datatypes in Perl.
- Perl Lecture 1.
- Perl Lecture 1.1.
- Perl regular expressions.
- Arrays as arguments. A small program demonstrating how arrays are passed as arguments to subroutines.
- The Perl Debugger
- How to install Linux on your
PC
- An example program that
uses the Comparable Interface.
- An example MySQL session on
a linux machine.
- Installing MySQL.
- Source Code from Sebesta, et al.
This is taken from the textbook.
- Running servlets and
JSPs under Linux.
- Integrating servlets and
JDBC. (This is very much under construction!)
- Java code for calculating public
cryptography keys (JBuilder project). And here's a nice arbitrary
precision calculator for use in calculating those large exponents.
- Source code from
Eberhart's Java Tools.
Assignments
Submitting assignments:
To submit assignments, go to http://caddis.acad.emich.edu/~hwmatt/student/.
In addition, you should hand in a hardcopy of your code, at the beginning of
class on the due date.
The assignments:
- A web page using frames and style sheets,
due Tuesday, January 25.
- A dynamic page showing a bridge hand,
due Tuesday, February 8?
- A few simple Perl scripts, due Thursday, October 28.
- A Simple Bookstore, due Thursday, November
4
- Retail Site Using Databases, due Thursday,
December 9
- First Java assignment (MouseBoxes),
due ???.