C Sharp

**C#** (pronunciado *"si xarp"* en inglés, ou *C díese*) é unha linguaxe de programación orientada a obxectos desenvolvido e estandarizado por Microsoft como parte da súa plataforma .NET, que despois foi aprobado como un estándar pola ECMA e ISO.

A súa sintaxe básica deriva de C/C++ e utiliza o modelo de obxectos da plataforma .NET o cal é similar ao de Java aínda que inclúe melloras derivadas doutras linguaxes (máis notablemente de Delphi e Java). C# foi deseñado para combinar o control de linguaxes de baixo nivel como C e a velocidade de programación de linguaxes de alto nivel como Visual Basic.

C# significa, "dó díese" (C corresponde a dó na terminoloxía musical anglosaxoa). O símbolo # vén de sobrepor "++" sobre "++" e eliminar as separacións, indicando así a súa descendencia de C++.

C#, como parte da plataforma .NET, está normalizado por ECMA desde decembro de 2001 (ECMA-334 "Especificación da Linguaxe C#"). O 7 de novembro de 2005 acabou a beta e saíu a versión 2.0 da linguaxe que inclúe melloras tales como tipos xenéricos, métodos anónimos, iteradores, tipos parciais e tipos anulables. Xa existe a versión 3.0 de C# en fase de beta destacando os tipos implícitos e o LINQ (Language Integrated Query).

Aínda que C# forma parte da plataforma.NET, esta é unha interface de programación de aplicacións; mentres que C# é unha linguaxe de programación independente deseñado para xerar programas sobre devandita plataforma. Aínda que aínda non existen, é posible poñer en funcionamento compiladores que non xeren programas para devandita plataforma, senón para unha plataforma diferente como Win32 ou UNIX.

Na actualidade existen os seguintes compiladores para a linguaxe C#:
* Microsoft.NET framework SDK inclúe un compilador de C#, pero non un IDE.
* Microsoft Visual C#, IDE por excelencia desta linguaxe, versión 2002, 2003, 2005.
* #develop, é un IDE libre para C# baixo licenza LGPL, moi similar a Microsoft Visual C#.
* Mono, é unha implementación GPL de todo a contorna .NET desenvolvido por Novell. Como parte desta implementación inclúese un compilador de C#.
* Delphi 2006, de Borland Software Corporation.
* dotGNU Portable.NET, da Free Software Foundation.

## Metas do deseño da linguaxe 
O estándar ECMA lista as seguintes metas no deseño para C#:
* C# debe ser unha linguaxe **simple, moderna, de propósito-xeral** de programación orientada a obxectos.
* A linguaxe, as implementaciones de aquí en diante, deben prover soporte para principios de enxeñería de software tales como revisión estrita dos tipos de datos, revisión de límites de arrays, detección de intentos de usar variables non inicializadas, e recolección de lixo automático.
* Espérase que a linguaxe sexa usado para desenvolver compoñentes de software que se poidan usar en ambientes distribuídos.
* Portabilidade do código fonte é moi importante, así coma a do programador, especialmente para programadores familiarizados con C e C++.
* Soporte para internacionalización é moi importante.
* Espérase que C# sexa adecuado para escribir aplicacións desde as máis grandes e sofisticadas como sistemas operativos ata as máis pequenas funcións.
* Aínda que as aplicacións en C# estean orientadas a ser económicas respecto dos requisitos de memoria e proceso, a linguaxe non foi feita para competir directamente en velocidade ou tamaño con C ou linguaxe ensambladora.

## Véxase tamén 
### Ligazóns externas 
* Desenvolvo de Software en C# Comunidade virtual para o intercambio de información en castelán sobre desenvolvemento de software en C# para profesionais practicantes, docentes e estudantes.
* Baltie - C# IDE for children and young Baltie
*Devjoker - C# en español. Tutoriales e foros.
* Geeks.ms Blogs sobre desenvolvedores en plataforma.Net e C#

* Standard ECMA-334 - especificación da linguaxe C# en inglés
* C# Online.NET - a súa enciclopedia libre de C# e.NET en inglés.
* C# Online.NET - a súa enciclopedia libre de C# e.NET en español.
* Kit de desenvolvemento de software (SDK) de Microsoft.NET Framework 2.0 (x86), (x64) e (IA64)
* Microsoft.NET
* Proxecto Mono
* Mono para a comunidade de fala hispana
* #develop
* Microsoft Visual C# Express Edition
* VBPrincipiantes
* ElBruno
* Borland Delphi
* Proxecto DotGNU
* Especificación do C#3.0
* C# School - inglés.
* Full C# Online book