The Java programming language is one of the most taught, learned, written about, and programmed in programming languages today. Beginning its life in 1995, it rode in on the Object-Oriented Programming hype-wave of the nineties. Although some might argue that Java's primary means of abstraction is the class---and therefore Java is primarily object-oriented, the huge number of available Java libraries indicates otherwise. In this essay, I will argue that Java's most powerful means of abstraction is the library. I will also explore whether a new term---namely "Library-Oriented Programming"---is warranted to describe programming using libraries as the main abstraction. A library (in OO languages) is a collection of classes designed and made to be used together in an organized way. There are certain conventions that must be...
[read full story]