C Sharp programming language

C# (pronounced see-sharp) is an object-oriented programming language developed by Microsoft as part of their .NET initiative. Microsoft based C# on C++ and the Java programming language. C# was designed to balance power (the C++ influence) with rapid development (the Java influence).

Table of contents
1 Program execution
2 Standardization
3 Example
4 Marketing
5 External links

Program execution

C# does not compile to binary code which can be executed directly by the target computer. Instead, as with Java, it is compiled to an intermediary code which is executed on a virtual machine which is included in the .NET framework. All .NET languages (which includes Visual Basic .NET and Managed C++ as well as C#) compile to this intermediary code called Microsoft Intermediate Language (MSIL). To the casual observer, the resulting program looks like a normal executable and has an ".exe" extension just like a normal application. However, executing the program fails on a computer that does not have the .NET Framework installed.

When the program is executed, the .NET framework compiles the intermediate code into binary code as it is run—just-in-time compilation (JIT). The resulting binary code is stored temporarily (in a memory cache), so if the program uses that portion of code again, the cached version is used. However this is only in effect during the runtime of the program. If a .NET application is run again, this compilation process is done again.


Microsoft has submitted C# to the ECMA for formal standardization. In December 2001, ECMA released ECMA-334 C# Language Specification. C# became an ISO standard in 2003 (ISO/IEC 23270). There are independent implementations being worked on, including: More recently, Microsoft has announced plans to add support for generics, templates, partial types and some other new features. Those additions were already proposed for ECMA/ISO standardization.


using System;

namespace Example { public class HelloWorld { private String aString;

public HelloWorld() { aString = "Hello World"; }

public override String ToString() { return(aString); }

public static void Main() { HelloWorld aHelloWorld = new HelloWorld(); Console.WriteLine(aHelloWorld.ToString()); } //Output is:Hello World } }


Microsoft is agressively marketing C# as well as the other .NET languages. For example, purchasers of the latest version of
Visual Studio .NET (Microsoft's popular IDE) can immediately develop mobile device applications in C#. To develop applications in other languages, such as C++ (which Visual Studio supports), developers have to download a separate IDE which doesn't even integrate with Visual Studio. With these barriers, Microsoft is motivating developers to abandon C++ and switch to C#.

See also: F sharp programming language

External links

" size=20>


Browse articles alphabetically:
#0">0 | #1">1 | #2">2 | #3">3 | #4">4 | #5">5 | #6">6 | #7">7 | #8">8 | #9">9 | #_">_ | #A">A | #B">B | #C">C | #D">D | #E">E | #F">F | #G">G | #H">H | #I">I | #J">J | #K">K | #L">L | #M">M | #N">N | #O">O | #P">P | #Q">Q | #R">R | #S">S | #T">T | #U">U | #V">V | #W">W | #X">X | #Y">Y | #Z">Z