Strong Sun/IBM support and over four million
developers
What is it?
In its tenth anniversary year, with claims of 700 million
Java-enabled PCs and over four million developers, Java is harder
to get a handle on than at any time in its history. Even within the
Sun Microsystems-driven mainstream there are dozens of technology
initiatives beginning with "J" and Sun has not helped by changing
the names of product families almost as often as Microsoft
does.
In parallel, there are full open source projects, including the
Netbeans and Eclipse Integrated Development Environments, and some
semi-open source exercises, like Sun's decision to release the JDK
(Java Developer's Kit) 5.0 source through its own Community Source
and Java Research Licences.
The newcomer to Java is like a visitor to a town where everybody
knows the bus timetables, so nobody bothers to print them.
IBM has probably been more influential than Sun in the promotion
and uptake of Java. The two companies recently announced a joint
vision for Java until 2016.
Where did it originate?
At Sun in the early 1990s. James Gosling was trying to find a way
of developing C++ programmes that could run on the widest range of
machines without compiling, and the Java virtual machine (JVM) was
born. You can read Gosling's 1996 white paper, The Java language
environment, at: java.sun.com/ docs/white/langenv/
What's it for?
Java is both an object-oriented programming language, and a
platform. Thanks to the JVM, Java programs are effectively both
compiled and interpreted. Java programs can run on any system that
has a version of JVM.
Java is used to develop both large-scale server side and client
side applications, including mobile clients. Sun claims 708 million
Java-powered phones.
What makes it special?
The Java mantra is "write once, run anywhere" -
anywhere there is JVM, that is. Other strengths include
scalability, from PDA to mainframe.
How difficult is it to master?
Java has a lot in common with C++, and C++ developers can become
productive after a week's training. If you don't have this
background, it's a good idea to become familiar with
object-oriented techniques first.
Five years ago, a Sun Java "evangelist" commented, "making up your
mind what portion of the Java platform you want to specialise in is
perhaps tougher than learning the language". That's more true
now.
Where is it used?
Java has become pervasive, except in the hardcore Microsoft
community (and they undoubtedly use services developed with Java).
IBM has made Java, with Linux, one of its core technologies.
What systems does it run on?
On all hardware with a JVM, on all sizes of equipment, and in web
services. Sun recently released Java Studio Creator 2 IDE, which is
based on NetBeans IDE 4.1.
What's coming up?
Sun is providing early access to J2SE 6.0, code-named Mustang, due
for release in 2006.