¿Por qué C#?

Una de las (muchas) cosas buenas de .NET es que puedes usar hasta más de 40 lenguajes de programación diferentes, es la llamada integración de lenguajes

La idea es que a la hora de compilar, primero se traduce ese lenguaje a un lenguaje intermedio común a todos y que ya entiende .NET. Por tanto, vale con que exista un compilador especial para cada lenguaje para que éste pueda trabajar con el poder de .NET. Microsoft tiene creados compiladores para C++, J# y VB.NET, y obviamente C#, que es el lenguaje con el que se ha creado toda la plataforma .NET.

Organizado de este modo, podemos usar clases en C# que hereden de J# y ésta, a su vez de VB.NET.

Entonces, si se puede usar cualquier lenguaje... ¿Por qué utilizar C#? Muchas son las opiniones que pueden surgir al respecto.

C# es un lenguaje nuevo y a la vez maduro. Maduro porque, como ya he dicho, toda la plataforma .NET está hecha con C#. Fue creado por Scott Wiltamuth y Anders Hejlsberg, este último diseñador del TurboPascal y la herramienta RAD de Delphi.

Para crear C# se ha metido en una batidora a Visual Basic, C++ y Java, y se ha cogido lo mejor de cada uno y mejorado aquello en lo que éstas fallaban. Con esto está todo dicho, y vamos desde cosas tan triviales (y útiles) como una serie de herramientas completísimas para tratar strings, hasta una gestión de memoria más rápido, pasando por las famosas listas genéricas.

C# es más sencillo e intuitivo, más moderno, orientado a objetos (obviamente) y sobretodo muy eficiente. Podrían enumerarse decenas de mejoras en extensibilidad de tipos, de componentes, operadores, uso de instrucciones seguras, posibilidad de, explícitamente, hacer uso de código "no seguro", y un larguísimo etc.

Desde un punto de vista práctico, C# es el lenguaje de .NET con más y mejores ejemplos.

Además,  "cambiarse" a C# es fácil para todos los programadores de Java y C++, y no demasiado difícil para los VBneteros.

Unos VBneternos que suelen ser los más reacios a C# y suelen atacar directamente a VB.NET. Ponerse a ver cual es el mejor de ambos lenguajes (el 90% de las aplicaciones en .NET están en C# o VB.NET) es tontería, porque lo que uno verá como ventaja, otro lo verá como desventaja, a continuación os enlazo un artículo muy chulo en el que se hace una comparación entre C# y VB.NET.

A lo largo de varios artículos comentaré muchas cosas particulares que hacen de C# el lenguaje más apto para .NET.