C Sharp Article Index for
C
Website Links For
Sharp
 

Information About

C Sharp






  name C#
  year 2001 (last revised 2005 )
  designer Microsoft Corporation
  implementations NET Framework , Mono , DotGNU
  influenced By Delphi , C++ , Java , Modula-3 , Eiffel
  typing Static , Strong , Both Safe And Unsafe , Nominative
  dialects 10, 15 <!--this is the version of the ECMA spec, not Visual C#-->, 20 (ECMA)
  influenced Nemerle , D , Java In Java 50, several features ( Foreach , Autoboxing , Varargs , Attribute s and Enums ) were introduced, after proving themselves useful in the C# language (with only minor differences in name and implementation) {Link without Title} {Link without Title} {Link without Title}
  paradigm Structured , Imperative , Object-oriented


C# ( See Section On Name, Pronunciation ) is an Object-oriented Programming Language developed by Microsoft as part of the .NET initiative and later approved as a standard by ECMA and ISO . Anders Hejlsberg leads development of the C# language, which has a procedural, object-oriented Syntax based on C++ and includes aspects of several other programming languages (most notably Delphi and Java ) with a particular emphasis on simplification.

This article describes the C# language as defined in the ECMA and ISO standards. For a description of Microsoft's implementation, see Microsoft Visual C# .


DESIGN GOALS

The ECMA standard lists these design goals for C#:
  • C# is intended to be a simple, modern, general-purpose, object-oriented programming language.

  • Because software robustness, durability, and programmer productivity are important, the language should include strong type checking, array bounds checking, detection of attempts to use uninitialized variables, Source Code Portability , and automatic Garbage Collection .

  • The language is intended for use in developing Software Components that can take advantage of distributed environments.

  • Programmer portability is very important, especially for those programmers already familiar with C and C++.

  • Support for Internationalization is very important.

  • C# is intended to be suitable for writing applications for both hosted and Embedded System s, ranging from the very large that use sophisticated Operating System s, down to the very small having dedicated functions.

  • Although C# applications are intended to be economical with regards to memory and Processing Power requirements, the language was not intended to compete directly on performance and size with C or Assembly Language .



ARCHITECTURAL HISTORY