T. Andrew Yang
(yang@grove.iup.edu)
Computer Science Department
HTTP://WWW.CO103.IUP.EDU/
-
Introduction
to Web Development
-
World
Wide Web as a new computing platform
-
The
client-server model
-
The
multi-tier model
-
Sample
Web applications
-
Alternative
Web development technologies
-
Client
side development
-
Server
side development
-
Summary
-
Curriculum
Design
-
Curriculum
Design Issues
-
A
Sample Course
-
Lessons Learned
-
Specialty
Track in Enterprise Computing
References
|
Designing
and Teaching a Web Development Course
Ø
Lessons Learned from the 1st Offering (Fall
2000) |
- Click here
to see the course on line (the syllabus, class notes, assignments,
tests, et. al.).
Ö
A Mixed Audience & the Final Grades
Previous experience |
Final grades |
Java but no VB |
AABCC |
VB but no Java |
BC |
both VB and Java |
A |
neither Java nor VB |
BCWW |
Ö
What have we learned?
-
A
good grab of Java is a must!
-
Some
students who took a Java course before still had difficulty completing
the assignments.
-
More
coverage of fundamental topics in Java, such as Java servlets,
will be helpful, especially during the first quarter of the course.
-
ASP
can be easily learned even for students without Visual Basic
experience.
-
Importance of multi-tier
model and distinction between client side and server side development.
-
Lack
of textbooks covering both the architecture, the protocols, and
the various technologies.
-
Difficult to get system
support for the course!
-
A
new course on distributed component-based technologies, such as
CORBA, EJB, and DCOM, is highly desirable!
Prerequisites:
cosc304 (Java Prog.) and cosc310 (Data Structure) Co-requisite:
cosc341 (Database Management System)
IDE versus "raw"
systems
- Sample IDE's: CodeFusion,
VisualAge for Java
- The "raw" approach:
JDK, notepad,
ftp, telnet, Java servlets engine, Web browser
Trade-offs?
Development versus
Deployment
Should students in an
upper-level Web development course be required to deal with the
deployment aspects of Web applications?
Ö
Alternative curricular design
-
Alternative
1: Two separate courses for separate camps of technologies
-
Course
one - focusing on Microsoft technologies, including VB Script,
ASP, and COM/DCOM.
-
Course
two - focusing on Java technologies, including applets, servlets,
JSP, JDBC, RMI, and EJB.
-
Alternative
2: Two separate courses with mixed technologies
-
Course
one - focusing on Web-server based development, including VB
Script, ASP, Java Script, Java applets, servlets, JDBC, and JSP.
-
Course
two - focusing on distributed component-based technologies,
including RMI, EJB, DCOM, and CORBA.
-
Guess
which alternative the students voted for?
The
result: alternative 2 (COSC415 + COSC416)
-
Main
arguments during the debate:
-
Simultaneous
(during the same semester) exposure to compatible technologies from
both camps
aka,
"preventing 'single-minded' practitioners who knows one and
only one camp" -- a famous quote made by Jeff, who had
completed his internship using both Java and ASP before taking the
class.
->
The importance of cross-platform development and distributed
connectivity!
-
Moving
from Web-server based development to distributed component-based
technologies
|