DevX Home    Premier Club    Search    RFP Exchange    eLearning    Code Library    Help    Locator+    Shop DevX    
Click Here   Join the Intel Knowledge Center on DevX.
September 2000

 
EDITOR'S NOTE
 

Elden Nelson
Elden Nelson
Editor in Chief

Microsoft has got religion about its latest language, C#. Frankly, it's hard not to be a convert.

    T   A L K   B A C K
Is C# as cool as I think, or am I missing the point entirely?
Email me or join the Talk to the Editors discussion.


Look Sharp

I don't want to come off as a Microsoft lackey. Really, I don't. That said, though, I have a hard time maintaining a detached, coolly pessimistic stance toward C#, especially after the recent PDC. Based on the demos, breakout sessions, and an interview with Anders Hejlsberg (distinguished engineer at Microsoft and designer of C#), I can tell that Microsoft is just giddy over this new language … and I think VC++ programmers are going to love the power and directness of C#, too. Here are a few reasons why.

It's designed to go online. It wasn't so long ago that the bulk of application development targeted isolated clients, and programming languages reflected that reality. The problem is that as development for connected clients has increased, programming languages haven't kept pace. C# will help remedy that. Hejlsberg explains, "The world is moving toward this component-style programming where your application is gradually getting spread out into a bunch of smaller components hosted in various environments. We've factored that into C#'s language design, so it has all the concepts of component programming, such as properties, methods, events, attributes, documentation—and lets you do everything in one place. In C++, on the other hand, you have to do a lot of housekeeping. Your code is spread out—it has a declaration here and an implementation there, and you have to do all this manual synchronization. And not only does that make it more complicated, but it also makes it hard for the language to embed itself in other hosting environments. Embedding C++ in an ASP page is just not possible. What are you going to do—embed an .h file in there? You just can't." Mark Anders, product unit manager for the .NET framework, underscored this (ahem) sharp contrast in his demonstration of ASP+, with HTML and C# freely intermingled in the same file.

It feels natural. You can tell that when Microsoft designed C#, it had VC++ programmers in mind. Says Hejlsberg, "If you look at what makes up the bulk of the language, you'll see it's the same. You know, the way you write your if's, while's, do's, for's … So we kept the statement structure so you'll feel at home right away—but then did away with all the things that irritate you."

When I asked Hejlsberg whether he thinks C++ programmers will balk at having to learn another language, he replied, "I think C++ programmers will definitely have an easier time going to C# than they would going to Java. [Microsoft has] several million lines of C# code now, and our in-house programmers consistently report it's a short learning curve from C++, and they find themselves way more productive."

Programmers like it. Thanks to the Common Language Runtime in Visual Studio.NET, developers will be able to use pretty much whatever language they want, whenever they want. Demonstrators at PDC, however, seemed to be using C# whenever they got the chance. Bob Lair, one of the key developers involved in developing ibuyspy.com—the show-and-tell Web site for .NET technologies—notes that he used to develop primarily in VB, but now prefers C# (be sure to check out "Build Web Apps With C#," our online feature this issue, for a behind-the-scenes look at how C# is used in ibuyspy.com). Tony Goodhew, Microsoft Visual C++ product manager, says that while he would still use C++ for managing existing apps, "If I were starting with a clean slate, I would use C#."

Of course, you'll find many more reasons to get excited about C#—the ECMA standardization of it, strong XML integration, built-in garbage collection—and reasons to be wary of it, too. And you can bet we'll talk about all of them in VCDJ.

Sponsored Links
Explore .NET functionality; take the New Worlds Challenge TODAY!
Click here for your FREE Unbreakable Security eKit.
Get developer tools and benefits FREE! Register NOW for Intel® Developer Services.
Take the New Worlds Challenge and enter to WIN a Harley-Davidson V-Rod!
Access a 2GHz Pentium® 4 Processor-Based System. Here's how it works.

Click Here   Join the Intel Knowledge Center on DevX.

DevX Home | .NET Zone | Java Zone | Get Help
VB Zone | C++ Zone | XML Zone | Enterprise Zone | Database Dev Zone
Wireless Zone| Security Zone | ASP Zone | DHTML Zone | UML Zone
MarketPlace | RFP Exchange | Discussions | Newsletters | Tech Tips | Sourcebank
Advertise | Help | Copyright | Privacy Statement