Cerramos del 11/08 al 15/08. Los pedidos cursados a partir del 08/08 a las 12.00 hora de España peninsular se tramitarán el 18/08/2025.
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros y videos
  2. C# 12 y Visual Studio Code
  3. Introducción
Extrait - C# 12 y Visual Studio Code Fundamentos del lenguaje
Extractos del libro
C# 12 y Visual Studio Code Fundamentos del lenguaje Volver a la página de compra del libro

Introducción

¿Qué es C#?

El lenguaje C# (se pronuncia «ci sharp» en inglés) es un lenguaje de programación fuertemente tipado, orientado a objetos y multiplataforma. Para desmitificar esta definición, vamos a ver el significado de los elementos:

  • Como vamos a ver durante el segundo capítulo, fuertemente tipado significa que todos los elementos se declaran inicialmente con un tipo determinado, que no se podrá modificar durante toda su vida. Por ejemplo, si declaramos un entero para almacenar en él un valor cualquiera, como la edad de una persona, luego no podremos almacenar en él su nombre en lugar de la cantidad de años porque es una cadena de caracteres, y no un entero. Este funcionamiento es muy distinto del de algunos lenguajes denominados débilmente tipados, como JavaScript, por ejemplo.

  • El desarrollo orientado a objetos es una forma específica de escribir código informático siguiendo un paradigma preciso. Estudiaremos este tema detalladamente durante un capítulo de este libro. Por ahora, lo único que necesitamos saber es que el lenguaje se clasifica en esta categoría. Como información, existen lenguajes denominados «procedimentales» (como el lenguaje C) y lenguajes denominados «funcionales» (como el lenguaje F#).

  • Multiplataforma porque el lenguaje permite realizar aplicaciones que no dependen de la plataforma. En efecto, C# se utiliza como un conjunto de herramientas, llamado framework.NET, que le da al desarrollador la posibilidad de crear aplicaciones con tipologías muy diversas. En este sentido, se puede usar en cualquier tipo de entorno (PC, Mac, móvil, TV, Smart Watch, etc.).

Como habrá comprendido, con el lenguaje C# y el framework .NET, tiene la capacidad de crear una aplicación que puede funcionar en distintos lugares con un mínimo esfuerzo. En este libro veremos algunos ejemplos de aplicaciones que se pueden hacer con C#. Sin embargo, no olvide que, según el destino deseado, habrá limitaciones de entorno. Por ejemplo, incluso si el lenguaje sigue siendo el mismo y los principios son comunes, no puede crear un sitio de internet de la misma manera que una aplicación para Smart Watch. Este libro se centra en las bases del lenguaje, de manera que, cuando escriba su primera aplicación, en función del destino elegido, podrá disfrutar de lo que ofrece el lenguaje.

1. ¿Qué se puede hacer con C#?

Aprender un lenguaje de programación es una decisión que debe tomarse en función de varios criterios. Entre ellos, sería lógico que encontrásemos la siguiente pregunta: «Si conociera este lenguaje, ¿qué aplicación podría crear?».

Hemos empezado a mencionarlo muy rápido, pero vamos a ver con más detalle lo que podemos crear con el lenguaje C#.

  • Aplicaciones para Microsoft Windows. Con C#, dispone de tres tecnologías que permiten hacer aplicaciones gráficas que se pueden ejecutar e instalar en un ordenador que funciona con Windows. Microsoft da soporte completo a estas tres tecnologías, WinForms, WPF y WinUI (sucesor de la tecnología UWP), en todas las versiones de Windows disponibles en la actualidad. Cabe señalar que WinUI solo permite crear aplicaciones nativas compatibles con Windows 10 y Windows 11.

  • Aplicaciones móviles. Con el framework...

Preparar el entorno

El lenguaje no es útil por sí solo, puesto que unicamente define la sintaxis. Es necesario definir una aplicación de destino para usar todo su potencial. Por lo tanto, vamos a tener que elegir:

  • el tipo de proyecto que vamos a realizar;

  • las herramientas para programar el proyecto antes elegido.

Aunque hemos visto que hay una cantidad bastante impresionante de tipos de proyectos, cada uno tiene sus propias particularidades. Una problemática que aparece es que, para la primera aproximación al lenguaje, no se recomienda añadir limitaciones vinculadas a un entorno muy concreto.

Por eso, la mejor manera de aprender C# es trabajar en una aplicación pequeña que se ejecutará en una consola, lo que se parece a una interfaz de línea de comandos. Desde luego esto no es muy atractivo, pero permite no tener ninguna limitación que interferiría en nuestro necesario aprendizaje de las bases.

Los archivos de código fuente C# son archivos de texto plano; por eso podemos prepararlos y leerlos con cualquier editor de texto (como el bloc de notas de Windows o vi de Linux, por ejemplo). No obstante, hay herramientas llamadas editores de código o IDE (Integrated Development Environnement o, en español, entorno de desarrollo integrado) que ofrecen muchas ventajas. Según el sistema operativo, es recomendable elegir uno de los siguientes IDE:

  • Para Windows, puede desarrollar la aplicación C# con Visual Studio 2022, Visual Studio Code o Rider.

  • En Linux o macOS, puede desarrollar la aplicación C# con Visual Studio Code o Rider. 

Visual Studio Code es una herramienta gratuita presente en todas las plataformas, la usaremos para trabajar en este libro. Cuando tenga bastante experiencia, podrá probar otro editor, según su sistema operativo, para comparar.

De manera bastante lógica, Visual Studio 2022 para Windows (el editor por excelencia) es la herramienta más completa y potente para hacer aplicaciones C#. Sin embargo, dado que este libro se dirige a desarrolladores de todo tipo, para que todos puedan experimentar en su sistema operativo, la elección recae de manera natural en Visual Studio Code.

1. Instalación y configuración de Visual Studio Code

Para instalar Visual Studio Code en su ordenador y empezar a trabajar, tiene que visitar el sitio de internet de la herramienta: https://code.visualstudio.com/

A continuación podrá consultar las instrucciones de instalación, que difieren un poco según el sistema operativo.

En general, el sitio de internet Visual Studio Code detecta el sistema operativo y propone directamente la versión adaptada. Si no es así, solo tendrá que usar la lista desplegable para acceder a la versión adecuada.

Después de instalar el entorno, debería poder ejecutarlo y tener una ventana que, en general, se parece a esta (excepto los iconos presentes en la barra lateral izquierda, que son extensiones):

images/01RI01N.png

Pantalla de inicio de Visual Studio Code

Si ha llegado al mismo resultado, ahora dispone del editor de código para empezar a trabajar. En caso contrario, le invitamos a empezar de nuevo siguiendo las instrucciones del sitio de Visual Studio Code hasta conseguir instalarlo. La documentación oficial describe detalladamente (en inglés) el procedimiento para su sistema operativo:

Aunque el editor Visual Studio Code...

¿Cómo funciona C#?

Un ordenador no puede comprender directamente el código fuente escrito en C#. Se trata de un lenguaje de alto nivel que ayuda al desarrollador a ser más productivo y más eficaz, pero este lenguaje no se puede usar directamente sin modificaciones. Vamos a escribir código C# y también vamos a garantizar que este código se pueda transformar en aplicación.

Para ello hay que pasar por dos procesos: la compilación y la ejecución. Como habrá comprendido, el código C# solo es un medio, y no un fin. Entre las herramientas que hemos instalado antes, especialmente las incluidas en el SDK, se encuentran dos utilidades que permiten transformar código C# en aplicación ejecutable: el compilador y la runtime. 

La primera etapa consiste en transformar el código C# en un código de base, no comprensible directamente por el ordenador, sino por una pequeña máquina virtual: el CLR (Common Language Runtime). El compilador «reescribe» el código C# en otro lenguaje, que se llama código IL (Intermediate Language) y la máquina virtual ejecuta este último.

Aunque no está obligado a comprender ni a controlar este aspecto por completo para escribir código en C#, eso permite formular un concepto importante: el código C# se transformará. En efecto, el compilador efectuará un conjunto de modificaciones y mejoras, pero también verificaciones en el código fuente. Si su código C# no compila, eso significa que ha escrito código que no se puede transformar y entonces no es utilizable. Funciona como una primera barrera de seguridad, que no evita todos los problemas, pero que permite estar seguro de que lo que se ha escrito es transformable.

Una vez producido este código, mediante un archivo DLL o un programa ejecutable, según la plataforma a la que vaya dirigido, la máquina virtual que realiza la transformación entre el código intermedio (el código IL) y las instrucciones materiales del ordenador lo lee y lo utiliza. Por eso ha tenido que instalar un SDK específico...