FAQ Subject:
Technologies
What
software will we
need for this class?
(Valid for Spring 2016) Unless you
have a very compelling
reason otherwise, just use the quick-start instructions below to
download and install everything you'll need this semester. The fact
that
you might simply have used something different for one or two other
courses doesn't count as a compelling reason; this is a different
course with
different
needs.
Quick-start instructions (highly recommended for all students!):
- Download the "Java SE 8u65" (or any later update) Java development kit from the Java
SE Downloads page
- Use the lage Java download link on the left, with label "Java Platform (JDK) 8u65 / 8u66" (not the large "NetBeans" link to its right)
- Accept the license, and download the installer for your platform
- Install this software using all the defaults
- Download the NetBeans IDE 8.1 "Java EE" bundle from the NetBeans
Download page
- Confirm your language and platform is displayed in the upper right
- Download the "Java EE" bundle (typically shown as the second
download column)
- Important! During installation:
- Un-check the "GlassFish" server installation
- Check the "Apache Tomcat" server installation
- Accept the optional JUnit license terms to install JUnit components
Expert instructions (only for professional developers with extensive Java
experience):
- Install any JDK v7 or v8
- Note: Older versions are no
longer supported in this course
- Install your choice of IDE
- Ideally your IDE should support automated management of Tomcat (see below)
- Install any Apache
Tomcat v7 or v8
- Note: Older versions are no longer supported in this course
- This will not be needed until about halfway through the
semester
You will also
need at least two major unrelated browsers
for testing purposes (so you can help ensure that your web interfaces
are not browser-dependent). The major browsers by approximate global current market share are: Google Chrome, Apple Safari, Microsoft IE or Edge, and Mozilla Firefox. The use of Opera, Konqueror,
and any other browsers (including platform-specific mobile browsers) is
also highly encouraged. Note that you don't necessarily need to
install
all (or any) of these browsers on your main development machine; you
only need to be
able to browse pages served by your development machine.
Can
I use my favorite Integrated Development Environment instead of NetBeans?
Yes. While NetBeans is highly recommended, you have complete
freedom in choosing your own development
environment in place of NetBeans, as long as your IDE at least supports
basic debugging features (ideally including debugging of servlets and JSPs) and integration with Tomcat.
Please note that this freedom comes
with a bit of a catch. Namely, you're on your own to troubleshoot
problems related to your use of any IDE other than NetBeans. You'll need to be essentially an expert in your chosen IDE. All
instructions, hints, and advice in this course have been extensively tested, but only using
the NetBeans version listed above. For help with alternative IDEs, you
may seek assistance your classmates via the discussion boards, subject
to
the course's overall policy on
collaboration.
However, since the vast majority of your classmates will probably use NetBeans, you may not find much help.
What topics
will we cover (or can we cover ... topic)?
The exact lesson outline/schedule varies somewhat from
semester
to semester, but the following topics can be considered as "core"
topics, which will be covered in significant detail throughout the
course, usually in this general sequence:
- Network Architecture
- Application Protocols and Caching
- Encryption and Security
- Server-side Web Technologies
- Enterprise Computing Infrastructures
- Client-side Web Technologies
- Extensible Markup Language (XML)
- Web Services
In addition, there are often one or two additional topics related
to important
emerging technologies. See the Lesson Outline on
the
main course website for your particular semester for exact topics and
timings.
If there are any specific topics you'd like to cover, or to explore
in greater depth than scheduled, please mention your wishes early in
the
semester. There aren't any promises, but usually there are
opportunities to at least briefly discuss such additional content as it
relates to the core curriculum. In addition, your feedback and
discussion throughout the course is vital, so that the
course can be tailored as we go along. This way you can help ensure
that we
cover content that's most relevant.