Java Reference
In-Depth Information
modular design. You should also control the proliferation of layers to
essential well-defined abstractions for the sake of performance. Integration
testing throughout the lifecycle helps you identify where the bottlenecks
and excessive layering are likely to occur so that you can spot problem areas
early enough to make design changes and set early expectations.
Setting the stage for Java
Over time, C++ established object technology in systems labs and even in tra-
ditional information technology shops across the world, and newer languages
began to include object-oriented features. In early 1996, CORBA was floun-
dering with both leading vendors, IBM and Iona, struggling to reach a critical
mass for their products and Microsoft struggling with DCOM , an alternative
architecture. Object technologies had established an effective beachhead, but
application programmers were lashing out at C++ and Microsoft development
environments and operating systems were under increasing criticism. Java and
Netscape were about to take the world by storm. Hydrogen, meet oxygen.
J ava technologies solve antipatterns
In early 1995, Sun built a proprietary browser with a language allowing tiny
applications, called applets, to be distributed like web pages. In late 1996, with
help from Sun, Netscape built the Java language and applet architecture into its
popular browser. The Internet was beginning to explode and suddenly
Netscape, and thus Java, were everywhere. It's not a perfect language by any
stretch. Its types are an awkward blend of primitives and true classes. It is still
controlled by Sun instead of an open standards board. And the Java community
still bickers about where to take the language and major extensions like J2EE .
But Java is right for the time. The C++ syntax, though awkward at times,
provides an instant community of programmers hungry for a cleaner and
higher level language. The Internet foundations positioned Java early on as
the premiere language for web class applications. One of the key factors to Java's
success is its resolution of problems and antipatterns common in other languages!
The C ++ and Smalltalk communities both had significant challenges that Java
addressed, at least partially. Here are some of the major problems that pro-
grammers of other languages encountered:
Pointer arithmetic in C and C++ , leading to instability and inherently
poor security. C ++ and C instructions could be used to write to just
about any memory in the computer, including maliciously or in error. If
a block copy went one byte too far, it was likely stomping on someone
Search WWH ::

Custom Search