Summary: There are many good, free, IDEs (Integrated Development Environments)
that provide substantial advantages over the use of simple text editors for Java program development.
The IDEs here are available for Windows; Mac versions of many are also available.
Altho IDEs are the most efficient way to develop programs, they are often
not taught in text books. This gives the false impression that they aren't important.
Why aren't they covered in most textbooks?
There are too many choices, it takes some time to teach / learn to use one effectively,
and instructors feel is not central to learning programming.
IDEs sometimes also hide details that may be important to learn about.
Once you know how to do everything on your own, it's easier to
understand and use these systems.
Full-strength IDEs
A full-strength IDE can provides extensive programming support for editing,
project management, debugging, building GUI interfaces, etc.
Surprisingly, most of these are free.
These offer far more than is required by the student Java programmer,
and may be a barrier to learning Java because there is a lot to learn
to use them.
- NetBeans - www.netbeans.org
- A free, open-source, IDE is available from Sun Microsystems.
This is a good choice for students and others.
Plus:
It comes bundled with the Java SDK and the installation
is simple without needing to mess with PATH and CLASSPATH.
It does continuous compilation, which
shows jagged red lines under erroneous statements as they
are being entered. There is brace matching, refactoring,
debugging and GUI form editing.
Minus: It has a bug that prevents it from reading
console input. This, unfortunately, rules it out for
use with some textbooks. When will it be fixed?
See NetBeans IDE for more information.
java.sun.com has a nice bundle of
NetBeans with the JDK. If you don't install the bundle, you must
install the JDK first.
- Eclipse - www.eclipse.org
- IBM's free Eclipse IDE, is popular,
and is the first choice of many professionals.
It supports the non-standard SWT GUI library as well as the standard
Java GUI classes.
- JBuilder - www.borland.com
- Borland's JBuilder
is good and the JBuilder 2005 Foundation Edition seems to be free. See
free download.
- IntelliJ IDEA - www.jetbrains.com/idea
- This is excellent, but expensive. It gets more favorable
reviews by everyone who has used it than any other IDE.
There is a $99 academic price.
- Don't use
- There are other IDEs, but most of these aren't suitable for
student programs.
Don't use Microsoft's Visual J++. Other parts of their Visual .NET
Studio may be good, but they have never provided good Java support.
Also, steer clear of Symantec's Visual Cafe for Java, which
is generally given poor reviews.
Half-strength IDEs
These are simpler to use for small projects, but typically don't
have nearly as many features, eg, no graphical user interface editor.
Not all have been updated to Java 5 the last time I looked, so check before
downloading.
- BlueJ - www.bluej.org
- BlueJ creates a nice development environment, which allows easy evaluation
of isolated statements, inspection of classes, debugging, etc.
My reaction to early versions was negative because it couldn't create
"real" programs. That has completely changed, and version 2.0.4
addressed most of my earlier reservations. My positive view is
the result of only 30 minutes of testing, but it looked very good.
There is textbook that is customized to use with it. I've seen it
in the past and it had many nice aspects, but I'll have to look
that over again.
Supports Java 1.5.
- jGRASP - www.jgrasp.org
- Many like it. The Control Structure Diagramming is nice.
Easy to install. Free.
To enable Java 5 features, start with the Compiler menu:
Compiler > Compiler Settings > Workspace > Compiler (Tab) > Environment (Tab)
then choose "j2sdk(1.5) (prefer JDK compiler)", and click the Use button,
then OK.
- DrJava - drjava.org
- A popular, simple, free development system.
It enforces indentation and allows
immediate evaluation of expressions.
Java 5 seems to be supported in recent beta versions.
- Others
-
- JCreator - www.jcreator.com - Free and "Pro" versions.
A number of students have used, and liked this, but it has not been updated to Java 5 as of 2005-02-10.
- JavaBeginner - www.javatoolsoft.com. I haven't taken a look at this relatively
new offering, and at $69, I probably will wait to hear what others say first.
Does not seem to be updated to Java 5 as of 2005-02-10.
- And many more...
Editors that run javac
Some programming editors will compile Java by linking to Sun's JDK.
- TextPad - www.textpad.com
- Good, but doesn't indent program. Has brace matching feature.
Pay, but can continue to use trial version with nags.
If the Java SDK is installed first, TextPad will allow
compilation of Java programs from the editor.
- jEdit - www.jedit.org
- Free, open-source, and good. This is my favorite editor. Has full set of
plugins, eg to indent the source.