topics that matter; ideas worth sharing

share a tip, submit a link, add something new

C#: A friendlier tune from Microsoft

July 16, 2001, 11:21 AM —  InfoWorld — 

The words open and Microsoft Corp. are rarely seen together. In server operating systems, Web browsers, programming languages, and countless other areas, Microsoft has proven that it needn't embrace openness to be successful. What, then, would possess the world's most infamously proprietary software vendor to dream up a marvelous programming language only to give it away to a public standards body?

Microsoft developed the C# (C Sharp) language. It created just-in-time C# compilers and a rich layer of standard data types and services it calls the Common Language Infrastructure (CLI). The combination of C# and the CLI, as packaged in June's beta 2 release of the .NET software developer's kit, supports the creation of text and graphical applications, server-side Web apps, components, and Web services. Most of this functionality has been submitted to the European Computer Manufacturers Association (ECMA) for standards consideration, effectively granting everyone the right to come up with C# compilers and CLI implementations of their own.

Assuming Microsoft follows through, C# will enjoy the kind of universal portability promised by Java but without restrictive license terms. In turn, business will have a new, powerful, and appealing programming language at its disposal. Conceivably, Microsoft could still withdraw C# from the standards process, but it isn't likely.

C# follows the time-honored Microsoft practice of invention through improvement. C# weaves together the best traits of C++, Java, JavaScript (now ECMAScript), and Visual Basic (VB). C#'s varied lineage makes it elegant, safe, and easy to learn. The language alone isn't enough to make an application: The accompanying CLI ensures that all C# programs will have a standard set of data types and classes covering everything from output formatting to network I/O.

As did VB before it, C# acknowledges that not all software is written by wizard-level programmers and sloppy code is inevitable. C++ is notoriously unforgiving of bad, hurried, or naively crafted programs. In contrast, Visual Basic has always given novice and intermediate programmers a safe place to work.

C++ programmers envy VB, but not for its safety. Microsoft wired an understanding of COM (Component Object Model) directly into VB. The company made many attempts to simplify C++ developers' access to COM, but Microsoft was not free to add keywords to the standardized C++ as it did to its proprietary dialect of Basic.

Reason suggests that C++ developers craving VB's ease-of-use could simply switch to VB, but most programmers won't code in what they consider a lesser language. C++ developers will learn and use C# because it retains the C++ features they admire most.

Eventually, C# will replace C++ for most Windows development, including commercial applications. C# is much cleaner than all the Windows and COM layers Microsoft has added to C++.

Some of the features that made VB so easy to learn have been shelved to make VB 7 (the version in Visual Studio.NET) compatible with the CLI. Merely competent VB programmers, along with their applications, won't pass muster under the stricter coding rules imposed by VB 7.

Microsoft's CLI is a key part of .NET. It standardizes data types

I like it!
Post a comment
The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.
Resources
White Paper

Symantec Backup Exec 12 and Backup Exec System Recovery 8 deliver industry leading Windows data protection and system recovery. Download this whitepaper to find out the top reasons to upgrade and how to get continuous data protection and complete system recovery.

Webcast

Data and system loss — from a hard drive failure, malicious attack, natural disaster, or simple human error — can happen anytime. Don’t leave your business vulnerable. Make sure you have a secure recovery strategy in place. Symantec's latest backup and system recovery technology can efficiently restore critical applications, individual emails and documents and even restore your entire system in minutes in the event of a loss.

White Paper

Businesses face a growing challenge to ensure that the IT environment is properly protected. Backup Exec 12 integrates with other applications in the Symantec family of products, to complement your current data protection strategy, keep your data securely backed up and make it recoverable when you need it most.

Free stuff
Featured Sponsor

Get a broad understanding of important regulations and how you can make sure your site is in adherence.





Learn how VeriSign SGC-enabled SSL Certificates can help improve site security and customer confidence in the free white paper, "How to Offer the Strongest SSL Encryption." In this paper you will learn the differences between weak and strong encryption and what they mean for your site's performance.

Get VeriSign's free white paper: "The Latest Advancements in SSL Technology" and learn about the benefits of strong SSL encryption, Extended Validation (EV) SSL and security trust marks and what these SSL offerings can do for your site.

Now with Extended Validation (EV) SSL available from VeriSign, you can show your customers that they can trust your site. Learn about EV SSL benefits in this free VeriSign white paper.

More Resources