HomeDigital EditionSys-Con RadioSearch Java Cd
Advanced Java AWT Book Reviews/Excerpts Client Server Corba Editorials Embedded Java Enterprise Java IDE's Industry Watch Integration Interviews Java Applet Java & Databases Java & Web Services Java Fundamentals Java Native Interface Java Servlets Java Beans J2ME Libraries .NET Object Orientation Observations/IMHO Product Reviews Scalability & Performance Security Server Side Source Code Straight Talking Swing Threads Using Java with others Wireless XML
 

Build Java Applications Faster and Easier
Business today moves at the speed of the Internet. Corporations are rapidly deploying Intranets as the vehicles for real-time information. But for professional developers, the wide adoption of the Internet has given rise to a new challenge: delivering high-quality applications, with limited resources, in a short time. The demand for information requires developers to deliver applications which reach more users, on a multitude of heterogeneous platforms, across global networks.

Consequently, many developers have turned to Sun's Java programming language. Java allows developers to build applications quickly. It allows for component reuse and the ability to "write once, and run anywhere"™ - a capability that means significant cost savings.

More than ever, performance is key for professional developers. With Sun Java WorkShop, professional developers get the fast performance they need to create dynamic Java applications. The new Java WorkShop Java Compiler - now ten to fifteen times faster than its predecessor according to Sun internal tests - helps to reduce build time and improve the edit-compile-debug cycle. Also key is Sun's new JIT (Just-In-Time) compiler, now built directly into the Java Virtual Machine.

Using Java WorkShop 2.0, you can also create and reuse JavaBeans, components that run on anything from mainframes to cell phones. Creation of JavaBeans is simplified through use of the built-in wizard. In addition, Java WorkShop 2.0 supports the latest JDK™ software. The latest APIs and language features provide greater flexibility in building your Java applications.

The Java WorkShop 2.0 development environment delivers on the promise of visual, intuitive application development. It provides a fully integrated graphical toolset which allows programmers to design, edit, compile, debug and tune Java applets and full-scale, client/server Java applications. Wizards for project and portfolio management allow users to share, manage and distribute information to the whole development team.

Sun Java WorkShop is the ultimate development tool for creating Java applications and applets for the Internet and corporate Intranet. New in the second-generation of Java WorkShop are:

  • A complete, visual environment which allows you to design, edit, compile, debug and tune Java applets and full-scale, client/server Java applications
  • Rapid Application Development (RAD) through the Visual Java™ GUI Builder, which lets you quickly design and create the GUI for your Java application
  • Support for the latest JDK and JavaBeans component model
  • A built-in Just-In-Time (JIT) compiler in the Java Virtual Machine and fast Java compiler
  • Profiler tools that help you analyze application performance
  • Multi-platform support for Microsoft Windows 95, Windows NT, the Sun Solaris™ operating environment (SPARC™ and Intel editions), HP/UX environments and Novell's IntranetWare.
Sun Java WorkShop makes Java development faster and easier and enables you to work on Internet time. With Java WorkShop, you get ease-of-use, visual application development, code reuse and the high performance you need.

Java WorkShop is the ultimate Java development environment - brought to you from the creators of Java.

Java JIT Compiler Overview
In order to understand JITs (Just-in-time Compilers), you must first understand how the Java Virtual Machine (JVM) works. When you write a Java application, such as the following hello world program,

class hello {
public static void main(String argv[]) {
System.out.println("Hello!");
}
}

you first run "javac", the Java Compiler, which turns the Java code into what is known as "bytecodes" and puts them into the "hello.class" file. This class file can then be interpreted on any machine which has a Java Virtual Machine on it. The key word here is "interpreted". The Java Virtual Machine processes each of the bytecodes in the .class file and executes them. This is similar to what other interpreted languages do, such as Basic, LISP and Smalltalk.

When a JIT is present, the Java Virtual Machine does something different. After reading in the .class file for interpretation, it hands the .class file to the JIT. The JIT will take the bytecodes and compile them into native code for the machine that you are running on. It can actually be faster to grab the bytecodes, compile them and run the resulting executable than it is to just interpret them. The JIT is an integral part of the Java Virtual Machine, so you never notice it's there, except your Java runs faster. Some environments allow you to choose whether or not to JIT code.

Java is a dynamic language, so you are not allowed to "statically" compile all the .class files into machine code until they are actually called. Thus the JIT is really "just-in-time", since it compiles methods on a method-by-method basis just before they are called. If you call the same method more than once, the JIT'd code can really pay off as you do not have to re-JIT the method and can simply re-execute the native code.

Does it make sense to always JIT code? No, not always. Sometimes JIT'd code does not run any faster than interpreted code. If the Java Virtual Machine is not spending its time interpreting bytecodes, then JIT'ing the bytecodes will not speed things up. Although it is rare, things might slow down since you are spending the time compiling the bytecodes when you could have been interpreting them.

Sun Java WorkShop v2.0 will incorporate a Java JIT compiler into the development environment. Java WorkShop 2.0 is the next-generation Java IDE that allows developers to design, test, deploy and maintain Java applets, applications and JavaBean components - from dynamic, animated home pages to sophisticated, interactive business applications - with speed and simplicity.

 

All Rights Reserved
Copyright ©  2004 SYS-CON Media, Inc.
  E-mail: [email protected]

Java and Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. SYS-CON Publications, Inc. is independent of Sun Microsystems, Inc.