Transcript CIS 521
CS 521
About This Course
4-Apr-16
CIS 521
The formal title of this course is “Advanced Web-Based
Java Programming”
The emphasis will likely be on “Web technologies”
Some of these technologies are specific to Java
Most of the technologies are language-independent
This course, however, uses Java
Prerequisite: CIS 421 or proficiency in a high-level
language
Translation: you had better already be a good programmer!
2
What this course is about
The explosive growth of the Web has greatly changed
the face of computing
Before, we wrote programs under these assumptions:
We could use whatever language was convenient
We could write programs for the computer we happened to have
available at the moment
We could design our own data formats and database schema
We did not have to interact with the rest of the world
Today, all of these assumptions are wrong!
Sun’s slogan, “The network is the computer,” is becoming true
Platform independence is no longer a luxury, but a necessity
There is a large and growing need for information interchange
3
Platform independence
The Internet has become indispensable
It connects millions of computers together
This network of networks runs on all kinds of computers, with
all kinds of operating systems
Interoperability of programs and data has become a crucial
issue
There are two possible solutions:
Microsoft’s preferred solution: Force everyone to use Windows
Much of Microsoft’s software is designed with this end in mind
If this happens, it will not happen quickly
Develop platform-independent languages and systems
This is what all the other software developers (including Sun
Microsystems, the creator of Java) are working on
4
Java, HTML, XML, etc.
Java is (?) the most platform-independent language we have
HTML is not as feature-rich as MS Word, but it nevertheless
serves an important purpose
We may look at ways to process XML from Java
SQL is the most widely accepted database language
HTML is the language of the Web
Most software documentation these days is distributed in HTML, PDF
(Adobe’s Portable Document Format), or plain text
We will look at ways to create HTML from Java
XML is a platform-independent way of describing data
This is one of the reasons for its popularity (there are many others)
We will look at ways to access SQL databases from Java
Client-server architecture is used to communicate across the Web
We will look at creating server-side and client-side applications
5
Technologies
This semester you will learn a little bit of some of a
large number of technologies: HTML, XHTML, XML,
XSLT, XPath, SAX, DOM, Servlets, JSP, SQL, JDBC,
others
You will get experience with some of these, and thereby gain a
better understanding of many things you’ve already likely
used
These technologies build upon one another--each topic is not,
in general, a new beginning
You don’t have to be an expert in all of them, but you are
expected to learn where to find out more
6
Software
All the software you need is on the Web
If you use your own computer, you need to install this
software
Everything you really need is free (except RAM and disk
space!)
You can avoid much proprietary (Windows-only) software
Recommended IDE: Netbeans
7
Textbook
Our textbook this semester is Advanced JavaTM: Internet
Applications by Art Gittleman
Additional instructional material is on the Web
The Web is full of great (and some not-so-great) tutorials and
specifications
We will sometimes use links to online tutorials and resources,
and you are expected to use them
If you find better links, please let us know!
The instructor’s web page has some links of interest
http://faculty.kutztown.edu/spiegel/Links.htm
8