Java hype aside, C++ still rules

The new object language on the block may be getting all the ink, but C++ is still the tool most applications developers use. For now.

Mike Ricciuti Staff writer, CNET News
Mike Ricciuti joined CNET in 1996. He is now CNET News' Boston-based executive editor and east coast bureau chief, serving as department editor for business technology and software covered by CNET News, Reviews, and Download.com. E-mail Mike.
Mike Ricciuti
4 min read
Java may be getting all of the ink these days when it comes to application development, but C++ is still the tool most developers use to get their work done, according to analysts who follow the development tool market.

No doubt, professional developers are kicking the tires on Java, interested mostly in its ability to be deployed on multiple operating systems without change or recompilation. But the new kid on the object language block still can't match C++ for down-and-dirty system-level programming and for generating high-performance code, experts say. That's C++'s lone domain.

"Where performance is an issue, C++ is the development language being used," said Evan Quinn, an analyst with International Data Corporation. "The latest performance improvements in Java are real. But C++ will still be used for years to come to develop high-performance code," he said.

"Java remains slow because there is no compiler, it's an interpreted language," said Mitch Kramer, an analyst with the Patricia Seybold Group.

"There is still the belief that for raw performance, you have to manipulate memory using pointers in C++. Java doesn't have that ability," said Kramer. "And for system-level code, for high-performance code, you have to mess around in memory."

Despite the relentless Java hype, C++ tools will still easily outsell Java tools this year. IDC estimates that in 1997, roughly 300,000 copies of Java rapid application development (RAD) and integrated development environment (IDE) tools will be shipped. That's an impressive number, but one dwarfed by IDC's estimate that 1.28 million had paid for C++ licenses by year's end.

Java toolmakers have targeted C++ developers as a natural audience. The languages have many similarities, and C++ skills are fairly easy to transfer to Java development. Java also offers the added benefit of built-in portability.

Few C++ developers are abandoning ship. IDC estimates that more than 90 percent of the installed base of C++ licensees will upgrade to the next version of their chosen tool.

However, Java's ubiquity has caused developers to take a long, hard look. Quinn says that C++ sales have flattened in the past year, mostly due to the Java hard sell from a handful of vendors, such as Sun Microsystems, Symantec, and other companies now selling Java tools.

"The growth curve before Java [for C++] could have been compared to the side of a mountain," said Quinn. "Now it's a plateau."

Quinn says that while new license sales of C++ have fallen off slightly as a natural result of having, for the first time, a true object-oriented competitor in the commercial software market, C++ makers are not seeing a decrease in C++ revenue. That is largely because of the high upgrade rate among installed bases.

Microsoft, which sells both C++ and Java tools, recently commissioned a survey of professional developers which found Java use on the rise.

Market Decisions of Portland, Oregon, polled 750 professional developers. Twenty-four percent said C++ was the tool they used most often for projects developed in the past six months, down from twenty-six percent in a similar survey five months ago. Six percent reported Java to be their primary tool, double the number of five months ago.

Where Java may be making inroads is in new application development, said analysts, but it's still too early to tell. IDC still estimates that the majority of new systems software is being developed in C++.

A new generation of Java tools, scheduled to debut in the coming months, could tip the scales toward Java in the coming years. Microsoft, Borland, Sybase, and Symantec are all expected to roll out Java RAD tools, aimed at corporate IS developers.

That could give Java a strong foothold in commercial IS shops, where C++ has never gained a strong following, said Quinn. "Big companies never glommed on to C++ as much as they did with Visual Basic and PowerBuilder," he said.

Sensing that trend, tools vendors are readying a new batch of Java tools for high-end commercial developers. The tools will combine the ease of use and database connectivity of tools like Visual Basic and PowerBuilder with the cross-platform capabilities of Java.

Microsoft is developing just such a tool under the code-name "Vegas," said sources briefed by the company. Vegas, which has yet to enter beta testing, could debut as early as this fall. The tool will further Microsoft's goal of moving toward a single integrated visual development environment, regardless of underlying language.

Symantec's Visual Café Pro already delivers RAD Java capabilities. IBM's Visual Age for Java tool has received high marks from corporate developers. And Borland says its long-awaited RAD Java tool, JBuilder, will cater to the IS crowd when it ships late this summer. The tool is currently in beta testing.

If these new tools catch on with the millions of corporate users now developing with fourth-generation language RAD tools, Java could become the most widely used development language since Basic, analysts say.

"We think one of the best indicators for determining the penetration of Java is based on watching the growth of Java RAD tools," said Quinn. "The mainstream adoption of Java is tied to RAD. And that market is really just getting going now, and not all of the major players have weighed in. 1998 will be a very interesting year for the Java market.

"When Java RAD has really matured, it will challenge client-server," predicts Quinn.