Sun-Microsoft rift over Java widens
But ISVs say porting to different Java implementations is already a fact of life
San Francisco (April 7, 1997) -- JavaSoft did make some progress last week in its mission to keep Java unified by integrating Netscape's Internet Foundation Classes (IFCs) into the Java specification, but Sun's rift with Microsoft and its less-than-100% Pure Java Application Foundation Classes (AFCs) only seems to be widening.
Sun's work with Netscape will result in the Java Foundation Classes (JFC) libraries that will significantly extend the graphical user interface (GUI) side of the language. Called the "Swing Set" by Java creator James Gosling, the JFCs are a fusion of JavaSoft's oft-criticized Abstract Windowing Toolkit (AWT) with the more full-featured IFCs. Sun says that engineers from its July acquisition of Lighthouse Design, along with staff from Sun, Netscape, and IBM will participate in the development of the JFCs at JavaSoft's Cupertino, CA offices.
The Java Foundation Classes seemed designed to provide developers with GUI services similar to those of Microsoft's AFCs. And it seems unlikely that there is any desire between Microsoft and Sun to integrate the two foundation classes. In fact, Microsoft announced that it was extending its libraries to now include data access, directory services, management, transactions, and distributed object interoperability -- something it calls the AFC Enterprise Libraries.
So independent software vendors (ISVs) are left with a dilemma. Do they develop with the JFCs and attain "100% Pure Java Certification," or do they use the AFCs and get all those juicy Win-32 hooks?
Or do they do both?
JavaSoft's chief technology officer, Jim Mitchell, says that if applications created with Microsoft's AFCs qualify as 100% pure Java, there is no problem. "The thing that will be a problem," he says, "is if they have interfaces that run only on Windows." Mitchell adds that, whether or not Microsoft supports the AFCs in its virtual machine, it will have to support the JFCs within six months in order to remain in compliance with its licensing agreement. So, in theory at least, even if there are two flavors of Java, the Sun version will run on any licensed version of the Java virtual machine.
Kiva Software's CEO Keng Lim says porting for different Java virtual machines is already a fact of life. "If you are a serious ISV, writing complex programs -- business applications -- you are going to have to invest in making your programs run on multiple virtual machines." This is because "different Java virtual machines have slightly different implementations on the UI components." Lim says that Sun is doing the right thing with its 100% Pure Java program and, if it is successful and virtual machine vendors like Microsoft and Netscape comply on their end then the promise of a unified Java may be fulfilled.
Other Sun news from JavaOne:
For more extensive, day-by-day coverage of JavaOne, go to the JavaOne Today site with reports provided by our sister publication, JavaWorld, at http://www.javaworld.com/javaone97/swol.index.html
If you have technical problems with this magazine, contact firstname.lastname@example.org