What's Brewing With Java
Java is the foundation of our next generation product, BBj. Here, we track and analyze the developments taking place in the world of Java.
THE JAVA 2 PLATFORM
With BBj, BASIS ports Business Basic to the Java 2 Platform from Sun Microsystems, Inc. With Java technology, BBj will be portable to any operating system (OS) that has the Java 2 Platform available (most major operating systems do). In addition, BBj will allow Business Basic developers to leverage other pieces of Java technology in conjunction with their Business Basic applications.
In a nutshell, the Java 2 Platform consists of two components: the Java Virtual Machine, or JVM, and the class libraries. The JVM is the central component of the platform and is what gives the Java class file its hardware and OS independence. The JVM understands the binary format of class files and interprets them to run on the underlying OS and hardware. In addition, it promotes security by requiring strict adherence to code constraints in the class files that it executes. The class files contain the implementation of standard Java objects such as java.lang.Thread, java.lang.String, java.util.Map, etc.
Because BBj runs on the Java 2 Platform, an implementation of the JVM and the libraries that is specific to the OS must be installed to develop in BBj or to run a BBj application. Therefore, if you have more than one OS in your network environment, you may have different Java 2 Platform implementations running BBj applications on the different OSs. Once the Java 2 Platform(s) for your system is installed, however, you will be able to run not only BBj applications but all other Java applications as well.
These different OS implementations of the Java 2 Platform are often available directly from the OS vendor. An implementation is packaged as a JDK (Java Development Kit) and/or a JRE (Java Runtime Environment). A JDK is a comprehensive development package and contains all of the tools necessary to develop Java programs, including a Java compiler and debugger. The JRE, on the other hand, contains only the pieces necessary to actually run Java applications, i.e., what your application's end user is going to need. In addition to being available from the OS vendors, you can also obtain some implementations, such as Microsoft Windows 95/98/NT/2000, Solaris and Linux, directly from Sun over the Internet at www.java.sun.com/products/jdk/1.2/jre.The Sun site also has a list of links to other JDK and JRE implementations at www.java.sun.com/cgi-bin/java-ports.cgi.
Because there are a lot of companies on the Java bandwagon, there may be more than one implementation available for your OS, even if you have only one OS; for example, there might be a Java 2 Platform for Windows from Sun and one from Microsoft. You will have to choose one for any given application.
What makes this choice difficult is that different implementations may have different run-time advantages. For example, one may have a small memory footprint while another runs faster and still another has faster graphics. You might want to use different implementations for different BBj applications. Taking the above example, if you wanted, you could have one BBj application running on Sun's implementation of the Java 2 Platform for Windows and another BBj application running on Microsoft's implementation for Windows. The only way to know which is best for your use is to test them with your software (i.e., your particular BBj applications with your particular software and your particular network configuration).
You can learn more about all of this, the Java 2 Platform, JVMs, JDKs, JREs and the technology behind them at www.java.sun.com
Copyright 2000, BASIS International Ltd. All rights reserved.