Java Reference
In-Depth Information
Chapter 11. The Developer Ecology
There was a time, not all that long ago, when developers faced the vast emptiness of an unwrit-
ten program carrying only the simple tools of an editor, a compiler, and (if they were lucky)
a debugger. Like their spiritual forefathers who carved a country out of the forests with just
an axe and a flintlock, these hardy developers built things of lasting beauty with remarkably
crude tools. Get a bunch of older developers together and they will soon be talking about the
deprivations of those times, and how programmers these days have it soft and don't really
know what it was like to wait for hours to get a compile done or to track down a subtle bug
with nothing but their bare hands and printf .
But we are no longer in the frontier times of software development. Indeed, there is a thriving
ecology around tools for the software developer, especially around the Java language and en-
vironment. Although there are still remarkable craftsmen (and craftswomen) building soft-
ware using the coding equivalents of axes and flintlocks, developers now have a selection of
power tools that make things easier and aid in the production of good software. These aren't
really part of the Java language or runtime, but many of these tools have grown up around the
language and runtime. So our final look at the good parts of Java will be to take a quick tour
of some of these tools and talk a bit about how they can improve a developer's life.
Technically, we have already talked about one of these tools. Javadoc, singled out as one of
the good parts of the Java environment, is really a separate tool for generating documenta-
tion. But it is so important, and so tightly integrated with the language itself, that it deserved
its own chapter. Some of the tools that we will look at in this chapter can save the developer
just as much time and effort, and so are important to know and use. New tools are being ad-
ded to the environment all the time, so what follows is a partial and idiosyncratic list. But the
very fact that tools are constantly being developed and added to the ecology around the Java
environment is an indication of the vitality of the technology. As the language and runtime
have evolved, the innovation has moved away from new language features or new approaches
to the virtual machine and toward the tools that make using the language and VM easier and
more productive.
Search WWH ::

Custom Search