Next: A basic program. Up: Introduction. Previous: None.


About Java

Textbook: Not in text

Historically, Java comes from two sources: C++ and Smalltalk.

In any case, Java's developers came along in 1991 and decided to design a new language. They basically took C++'s syntax, but decided not to worry about backwards compatibility with C. They also rethought C++'s additions to C - often deciding not to add C++ features to keep things simpler and closer to the elegance of Smalltalk. The result is something that looks vaguely like C++, but which is definitely distinctly different.

Java's designers made an astonishing number of correct decisions. The first modern version was released in 1995 (Java 1.0), and the developers succeeded in linking the Web with Java. Since the Web was particularly hot in 1995, so did Java quickly become. There was lots of hype, and Java gained its foothold.

Since then, the hype has largely dissapated, but Java has remained in wide use. It's a good language - the design isn't perfect, but it's much better than any previous language that gained such prominence in industrial programming (FORTRAN, C, C++). In its first five years, it has proven to have lasting power.

Now colleges across the country teach Java as their first language, happy to break free from the inelegant C++ while still teaching a language that people use in industry.

In the near future, Java will likely increase in importance, as more Java experts graduate and industry continues to switch their applications over to Java with the realization that it is easier to use than C++. C++ will continue to hold onto a large share - both because of the large base of already-existing C++ programs, and because Java's inefficiencies are unacceptable in some applications. My personal prediction is that in the next several years, Java and C++ will be the two prominent languages (with over 90% of production-quality software development between them), and that each would have an equal share.


Next: A basic program. Up: Introduction. Previous: None.