The introduction of Java brought several advances to the discipline of
software development. Based on lessons learned from years of building
software in C++, the Java language was designed to simplify the development
of object-oriented, network-aware applications. It brimmed with potential and
was accompanied by a wide variety of promises, including enhanced programmer
productivity, seamless cross-platform deployment and an architecture for
building large-scale applications.
Over the past three years, the promise of Java has been put to the test
repeatedly. What has emerged is a better picture of what customers want from
their software as well as what Java can and cannot do. To its credit, the
design of the Java language has demonstrated tremendous programmer
productivity benefits over C++. Language features such as automatic garbage
collection, exception handling ... (more)