To: Kashish King who wrote (9609 ) 3/30/1998 12:24:00 AM From: Bipin Prasad Read Replies (1) | Respond to of 10836
To All: I attended the pre-conference class on "Using Swing Classes" on Monday March 23. This was a full day class. Then I attended 4 days (Tuesday - Friday) of Java One. To reduce the chance of boring non-Java folks, I will try not to get too wrapped up in technical details. Java is moving fast and furious (sometimes it seems that it is moving in many directions at the same time). Last year's conference drew 6,000+ attendees. This year the number was closer to 15,000. This number makes it the biggest conference of its kind in the US. Java was demo-ed on multitude of devices and operating systems - from rings (available from Dallas Semiconductor for $45 at the show), to smart cards, on oscilloscopes (from Tektronix ?) to mainframes (and everything in between). That was one big message of Java - "Ubiquity". In the Java Pavillion about 100+ vendors were showcasing their products. The second big message of the Java One conference was "Stability". This means changes wont be as fast and furious and will be more organized. The last, and the most important message was "Performance". In an amazing demo that received several ovations, JavaSoft ran an example of the new "Hot Spot" Java Adaptive compiler technology. This compiler optimizes, inlines (and then optimizes again) based on the usage of the code. Since it remains around, it can make optimistic assumptions and then adjust the code if actual execution path doesn't follow the optimistic assumptions (this can happen - when dynamically loaded classes are used). This allows the compiler to fine tune the generated code on a continuous basis. Memory allocation and garbage collection has long been a sore point of Java. In the demo, they ran a Java program that allocated 1,000,000 objects. In Symantec's JIT it took 12 seconds In Microsoft's JIT it took 9 seconds In C++ code of just new/delete it took 7 seconds. In Hot Spot it took 5 seconds. (faster than C++ ? Yes, in this specific area !) This new generation of Adaptive Java compiler will finally bring performance of Java code in the same range as C/C++. This was their prediction for 1998. Hot Spot compiler is still a several months away from being released. Presentations were being made simultaneously in 7 tracks. In addition, there were numerous Birds of Feather meetings, and other conferences and meetings. I had to select a narrow set of presentations. I selected some based on immediate need. Others I selected based on future direction and architecture. Some interesting things that are going on now and can be used are (by no means an exhaustive list) -- Java 3D API : allows you to create virtual worlds from a variety of existing formats and provides a rich framework -- Java Activator: To get and run your applet in the required / latest Java VM. This is a means of getting around the slow implementation of newer releases of JDK in the browsers. -- Java Speech API -- Java Help API -- New Security in JDK 1.2 -- Java Server Toolkit : allows servelets with embedded Java (and HTML), and built in Java Objects. However, from an architectural point of view, and for future development, I came away with this new thing now being called Enterprise Java Beans. EJB's are different enough to deserve their own name (since they are more than a regular Java Bean). EJB is an architecture that describes how these enterprise wide beans can be created and accessed. EJB's are distributed and accessed in a distributed manner. There are several roles (bean provider, bean deployer, application deployer, service provider, system administration, and transaction management). Transaction management is done outside of the bean and is specified at the time of bean deployment. EJB specification covers a lot of territory. However, it has a lot of power. Assuming that the tool vendors will supply the missing links, EJB can be easy to develop. So when I visited Borland and Symantec booths (several times) I had two goals in mind: 1. How well will they support the new JDK 1.2 2. How easy can they make Enterprise Java Beans Development. I was comparing beta products (of Borland's JBuilder and Visual Cafe). I saw better of support for JDK 1.2 in JBuilder. Specifically, in JDK 1.2 the GUI components, also known as "swing set" introduces new concepts like the rootpane, contentpane, and z-ordering. Correct support for JDK 1.2 should include an understanding of these. This was present in JBuilder. For EJB development, there was ample support in JBuilder, including creation of new/intermediate classes from the IDL (Interface Definition Language). Other impressive improvements in JBuilder include: 1. Context sensitive help 2. Code completion and method signature available on-the-fly. 3. 85% of JBuilder in now written in Java - up from 60% in JBuilder 1.0. (Does this mean that it will be available on other platforms as well ?) With JBuilder taking a distinct lead and advancing on several fronts, this bodes well for Borland. Renewing my faith that they are widening the lead and will continue to churn out development tools that are better. Bipin Prasad