Whenever Microsoft does something, people pay attention. The company's
.NET initiative, with its brand-new C# programming language thrown in
for good measure, is no exception.
According to Microsoft, C# promises rapid development of Web services
applications. If that sounds familiar, it is. Sun has been promoting Java the
same way for years. In fact, many are wondering whether C# is just a rehash of
Java that will bind developers even more tightly to Microsoft's platforms -- or
whether they might be better off skipping Java and C# altogether and sticking
with C or C++ instead.
All in the Family
There is no doubt that C++, Java and C# are different languages, but
they have more in common than one might think. "C++, C# [and] Java
are all in the same family of languages, and there are considerable similarities between
them," Eric Gunnerson, who was a member of the C# language design team at Microsoft,
told NewsFactor.
However, C# and Java have more in common with each other than with C++, according
to Gunnerson. "C# and Java are both managed environments, and this means that object
management is largely handled by the system, [whereas] in the C++ model it is handled
by the programmer." In addition, he said, "Typical C++ code has lots of pointers, while
C# and Java are reference-based, so the kind of code you would write and how you
write it turns out to be fairly different."
So, based on the scope of a project and its target platform, developers and IT managers face a tough decision when it comes to choosing a language.
The Java Argument
Not surprisingly, Sun Microsystems senior product manager Larry Baron is in the Java camp. "Java is well suited for a wide range of applications," he told NewsFactor. "It is the de facto standard programming language for Internet-aware applications. It
runs well on small systems and scales up to the largest multiprocessor
data center servers."
Baron added that C# is best left to Windows. "C# is best for applications
that must fit into Microsoft's .NET framework on the Wintel platform and
need not run anywhere else."
For developers who already know C++ or C, Baron noted, the switch to Java
is easy. In addition, he said, "presently, it is easier to learn Java [than C#, owing
to [Java's] seven-year presence, wide-scale deployment, and the large amount of
quality online, published and training help." (continued...)
|