C Sharp

From Citizendium
Revision as of 10:08, 3 April 2022 by Pat Palmer (talk | contribs) (Adding a blurb about its enduring popularity)
Jump to navigation Jump to search
This article is a stub and thus not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
This editable Main Article is under development and subject to a disclaimer.
For other uses, see C (disambiguation).

C# is a main-stream, general-purpose programming language developed at Microsoft. C# is fully object-oriented and is under continuous active development by Microsoft. C# programs are fully portable across all recent Microsoft operating systems since Windows 2000/XP (and partially on Windows 98). The latest version of C# (and the virtual machine software it runs on, .NET Framework v6.0) as of April 2022 is 10.0. These were released in 2021.

C# has remained popular over twenty years, especially for Windows server applications due to its high performance, reliability, and retaining of backwards compatibility for older programs. As of April 2022, the PYPL index ranks it 4th, and the TIOBE index 5th, in popularity, with an overall user share estimated at 7.5%[1]. Both indeces show its usage as slowly increasing.

To execute on Windows, C# programs require the installation of the .NET Framework Common Runtime (CLR), a virtual machine that hides operating system details. The runtime, as it is sometimes called, is available both for Windows client computers and Microsoft Web servers. C# programs consist of .exe or .dll files, each containing Common Intermediate Language (CIL) instructions which will execute in the CLR, a manifest (table of contents), metadata pertaining to the program, and (possibly) encapsulated resources such as images or audio.

C# is deliberately similar to the Java programming language and Java platform[2].

In C# 3.0, Microsoft added the 'var' keyword, which allows type inference[3]. For instance, one might declare: var fooString = "Hello, World!"; when in previous versions, one might have to write: string fooString = "Hello, World!";

Standards and Implementations

C# is standardized by ECMA (the ECMA-334 standard) and by ISO/IEC (the ISO/IEC 23270 standard). Microsoft’s C# for the .NET Framework is a conforming implementation of both of these standards. An independent version of the Common Language Runtime (not developed by Microsoft) is available as a result of the open source Mono Project[4]; it provides software to develop and run .NET applications on Linux, Solaris, Mac OS X, Windows, and Unix.

References

  1. Top Computer Languages from TIOBE and PYPL indexes; last access 4/3/2022
  2. Mark Johnson, C#: A language alternative or just J--?, JavaWorld.com
  3. Sahil Malik, A Preview of What's New in C# 3.0, developer.com
  4. Mono Project, sponsored by Novell.