What is it?
"The number of technologies listed here can appear overwhelming.
Keep in mind that you will not need to use them all," says Sun's
overview of
Java Technologies for Web Applications. This is good advice for
anyone approaching Java for the first time, particularly if they
have decided to make use of the many free resources available to
teach themselves.
A
summit in May 2008 on the future of the Eclipse development
platform revealed concerns over proliferating Java technologies
leading to "too many ways of doing things".
Fortunately Sun has provided a simple path for people who want
to take the first steps in Java development. Its advice is: "Start
with one of the tools listed below, work your way into the next
tool, and include the resources as you feel ready." The path leads
from first steps in programming to the NetBeans Integrated
Development Environment. It's intended for "young developers" from
high school to first year undergraduates, but as Sun says, "that
doesn't mean someone younger or older won't benefit from it".
Where did it originate?
James Gosling began developing Java as a processor-independent
language in 1991. It was released in 1995, and integrated into the
then-dominant Netscape Navigator browser. A journalist writing for
Wired commented: "Java is unlikely ever to become a major profit
centre at Sun". In 2007, Sun open-sourced most of the Java platform
under the GNU public licence.
What is it for?
Rather than running directly on the native operating system,
Java programs are executed by a Java Virtual Machine (JVM) specific
to the underlying hardware/software platform. Programs developed on
one platform should be able to run on any other for which a JVM is
available. This is the basis of Java's "write once, run anywhere"
capabilities. Programs are compiled to Java bytecode. Google's
Android phone platform has aroused concern because its Dalvik
Virtual machine uses non-Java bytecode, thereby jeopardising
application portability.
What makes it special?
Other languages that can be compiled to Java bytecode and run on
a JVM include Ada, Ruby and Python. Sun is improving support for
non-Java languages through the
Da Vinci Machine
project.
How difficult is it to master?
Sun's Young Developer path includes BlueJ, which teaches "the
nuts and bolts of the Java programming language", and shows what is
happening visually. It then moves on "seamlessly" via a BlueJ
plug-in to the NetBeans IDE, using the
World of Zuul
adventure game to explore the features of NetBeans. At this
point you should be ready to ready to get to grips with the
grown-up Java tutorial.
What systems does it run on?
The Java platform and JVMs are available for Windows, Linux,
most versions of Unix and IBM's mainframe operating systems.
Rates of pay
From £25-30K.
Training
For BlueJ and other introductory resources see
http://java.sun.com/new2java/
The Java Tutorial is at
http://java.sun.com/docs/books/tutorial/
There's also a regularly updated
Getting started with Java Facebook page.