Razor Sharp C#

A long-cherished desire of programmers to have the best of visual basic (VB), C and C++ in one language may have been answered by a new solution from Microsoft, C#.

C# (pronounced C sharp) is a hybrid of C and C++, two of the most popular programming languages used by software developers to write applications for Windows. It also has many of the useful features of VB. While VB is easy to read, write and maintain, and while the powerful languages like C and C++ are flexible, C# has all of these wonderful features. Providing balance between power and productivity, C# sharp is the language of the future. It makes development faster and easier. It is thus expected to be the leading language for Microsoft for writing COM++ and window-based programs for enterprise computing.
 

Its History:
 

There have been legal battles between Microsoft and Sun Microsystems over “Java” for more than four years. Sun has sued Microsoft for allegedly failing to comply with its Java licensing terns. Microsoft is also pushing its own version of Java, called J++, based on technology licensed from Sun. Since then, however, Microsoft has changed track to C#. Instead of launching J++ 7.0, which was due out, Microsoft launched C#. To simplify integration and interpretability, Microsoft worked with ECMA, an international standards body, to create a standard for C#.

Microsoft originally developed the language, called “COOL”. Before the release of product the company said COOL was merely a better version of C++. The result was meant to be Microsoft’s answers to Sun’s Java.

 

C# is provided as part of Microsoft Visual Studio 7.0 in addition to C#, Visual Basic, C++ and the scripting languages VBScript and J Script. Since C# uses the .NET software development kit, which defines the Common Language Subject, it has complete access to the same rich class libraries that are used by seasoned tools such as Visual Basic and Visual C++. C# is claimed to be the most stable part of Visual Studio .NET. It is key command of the Microsoft .NET platform.


Where It's Heading
 

This simple, modern, object-oriented and type-safe programming language is likely to be taken up immediately by C and C++ programmers. They can now develop internet-based applications without learning Java. This language can bring about more speed in building applications for the new Microsoft .NET platform, which exploits computing and communication to provide various tools and services. Modern programming demands short cycling times and frequent revision. C# does this with fewer lines of the code and less errors. This is the age of the internet, and tools are required to work with HTML, XML and SOAP. At present the existing tools are not the completely suited to working with new technologies. C# has built-in support to turn any component into a web service that can be invoked over the internet from any application running on any platform.

The language also offers features that are available in Java, including better security and garbage collection, which tidies up computer memory used in a software programs. Garbage collection is one of Java’s most popular features, which helps in reducing the complexity of application development. To attract Java professionals, Microsoft also introduced a tool that can convert Java software code into C# code.

C# eliminates costly programming errors, thus software development and revision becomes less costly. For example, even an expert C++ programmer can make the simplest of mistakes like forgetting to initialize a variable. Such mistakes result in unpredictable problems that can remain undiscovered for long periods of time. In the case of C#, variables are automatically initialized by the environment. Some of the other advantages of C# are: garbage collection, which relieves the programmer of the burden of manual memory management; type-safe variables; and the ability to update the software components at a later time as C# includes versioning support within the language, which cannot be done in C++ and Java. This helps prevent coding errors and preserve versioning flexibility.