Having problems running Java, e.g. blocked by
security settings? See the
Java Tips and Traps page!
This page is a collection of general resources on the Java language.
Quick Links:
The main site for Java is
http://www.oracle.com/technetwork/java/index.html
The course always uses the latest version of Java, so be
sure that you have updated your JDK!
Legacy Note for 64-bit System Users
Since applets and Java Web Start (JNLP files) are no longer supperted at all in the latest Java versions, the following is only for legacy situations and not applicable for most current Java installations.
Java Web Start (JNLP) applications for Java 11+ can be run using OpenWebStart.
Java support for applets (Java programs that run in web
browsers) is problematic in 64-bit browsers, e.g. they will not run at all.
Installing a 64-bit JDK does NOT install Java support in the 32-bit browser in
64-bit operating systems. Since the 32-bit browser is usually the
default browser, this can cause problems in displaying the on-line demos for
Comp310 and displaying applets in general.
In Windows Internet Explorer 8, you can tell if Java is
installed in the browser correctly by going to
Tools/Internet Options/Programs/Manage Add-ins and seeing if the
"Java(tm) Plugin 2 SSV Helper" is installed.
To run applets in the usually, default, 32-bit
browser, you
must install the 32-bit JRE (you don't need the entire JDK),
which you can obtain here: http://www.java.com/en/download/manual.jsp
If you are having trouble running applets in the the 64-bit
browser, e.g. it fails the verification below, try reinstalling the 64-bit
plugin from the link above.
Windows 10 users running the Microsoft Edge browser:
Edge does NOT run Java applets, so you will have to switch to Internet Explorer
to run the on-line demos in the class web pages: On any page in Edge, go
to "More Actions" and select "Open with Internet Explorer".
Java Language
Java Development Kit (JDK) Installation
- Download and install the latest Java Standard Edition (SE)
JDK:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
- Install the 64-bit version unless you have very special circumstances!
- If you have a 32-bit operating system, download the 32-bit version,
referred to as "x86" or just plain "Windows".
- If you have a 64-bit operating system, you can install either the
32-bit or 64-bit (referred to as "x64") systems.
- Whatever version you install, be sure to install the same
version of Eclipse and any associated plug-ins!
- Even on 64-bit operating systems, most browsers use a
32-bit JRE to run applets (on-line demos).
This means that in addition to the 64-bit JDK,
you must ALSO install a 32-bit
JRE (not JDK!) for the browsers to
use.
Notes for Mac users:
JDK 1.8 issues:
- Java ver 1.8 may not be installed in the Mac OS, but
JDK1.8, which will also install the JRE, is available as a download from the
above Java download links.
- JDK 1.8 requires at least "Mountain Lion" OS 10.8 --
If you
do not have this....upgrade!
- Instructions from Oracle:
JDK 8 Installation for OS X
- After installing, Eclipse may not automatically recognize
that the 1.8 compiler and JRE are installed. Please see the instructions here.
Other potential issues:
- The Java JDK is pre-installed on OS X, though perhaps not the latest
version available directory from Sun/Oracle. See, for instance, Apple's
FAQ's on Java:
http://developer.apple.com/java/faq/
- OS X, if 64-bit capable may have both 32-bit and 64-bit JDK's installed,
but the default is to run the 32-bit version. See, for instance,
http://developer.apple.com/java/javaleopard.html
- Java updates are part of the OS X updating mechanism but are not
automatically updated.
- ApApple does not make Java download available to the general public.
You have to be a registered Apple developer to get some Java downloads.
Notes for Linux users:
UML Diagrams and OO Design Techniques:
- Class Diagrams, aka "UML Diagrams" -- static relationships between
classes
- Design Process:
- Use Case Diagrams
- Use Case Diagrams -- User-centric,
implementation-independent view of the system in terms of what is being
done.
- System Block Diagrams --
Decomposition of a system in terms of decoupled modules.
- Sequence Diagrams -- Time-dependent interactions between objects.
- Component-Framework Systems -- Decomposition of
a system into an invariant framework controlling variant plug-in components.
- Diagramming Tools: (for tools integrated with Eclipse, please see the
Eclipse Resources)
- Creately.com
-- Free on-line tool that makes most types of diagrams.
- Industry Buzzwords -- Common busswords and
acronyms that you may encounter in industry and what they mean.
Design Patterns:
- OpenStax (Connexions) General Resources
- Quick links to some of the OpenStax (Connexions) modules:
-
Portland Design Pattern Repository -- descriptions of the standard
patterns plus some new ones.
GUI Programming
Sometime you need to investigate how well your program is running in terms of
speed, threads and memory usage. A "profiler" is needed to do this and can
be invaluable in both debugging difficult problems such as performance issues,
memory leaks and excessive thread usage, as well as for focussed performance
optimizations.
Geographic Information Systems (GIS)
© 2020 by Stephen Wong