| Course: |
CS 412 (CRN 25983); 512 (CRN 25984) |
| Title: |
Web Programming |
| Semester: |
Spring 2009 |
| Hours: |
TuTh 8:00-9:15 AM |
| Location: |
McGl 020 |
| Prerequisite: |
CS 321 -- Database Systems and
either CS 301 -- Software Development or CS 312 -- Prin. Prog. Lang. |
| Programming Languages: |
PHP |
| Web Languages: |
HTML; CSS; XML |
| Other Languages: |
SQL |
| Text: |
David Sklar and Adam Trachtenberg;
PHP Cookbook; 2nd ed.
O'Reilly; 2006.
ISBN 0-596-10101-5 |
| Final Exam: |
Tues. May 5; 2:00-5:00 PM; MS 020 |
| Grader: |
Lei Lu; MS 107A; llu -at- cs.wm.edu |
| Students: |
Pictures (local access only) |
Catalog Description:
Overview of the Internet.
Markup languages: HTML, CSS, XML.
Server-side programming languages: Perl/Python, PHP, Java.
Other topics include: N-tier programming, security, database access,
XML processing.
Objectives
- To learn some web programming techniques, particularly generating
web pages dynamically using backend databases.
- Course threads:
- Develop programs in a professional
manner.
- Software engineering, particularly reusable
code documentation, and testing.
- Security issues: SQL injection, cross-site scripting, Google
hacking, etc.
- Efficient client-server programming.
- Your learning objective in taking the course!!!
What the Course is Not
- Not about building web pages or web sites, especially using site tools
such as Dreamweaver, Adobe Photoshop, Adobe CS3/CS4, etc.
- Not about images and other forms of multimedia
on the web, including Flash, Spotlight, VRML.
- Not about installing and maintaining web servers, such as Apache.
- Not about client-side (browser-side) programming, eg, applets,
JavaScript (Ajax -- OK).
Notes
- You are encouraged to bring your laptop; beginning with the
2nd day of class, we will be using them.
- This is a heavy workload programming course.
- Students should work on homeworks and projects in pairs (412
separate from 512).
- Pairs should follow the rules for
pair programming. Note that stability of pairs on the warmup
projects is discouraged.
- For the semester project, students must form teams (412 separate from 512). You may still use pair programming
with your teammates.
Administrivia
- Email lists are setup automatically to use your W&M email
account.
- If you are not going to read email from your CS account,
please set a forward; e.g.:
echo userid@wm.edu > ~/.forward
where userid is your W&M user id.
- If you have a disability that may affect your performance
in this course and wish to discuss academic accommodations,
please contact me as soon as possible.
Robert Noonan
Apr 27, 2009