Cómo funciona .NET
Cómo funciona .NET
En este esquema podemos ver, a grandes rasgos, como funciona .NET, y en su defecto, C#.
En la imagen podemos ver que el proceso se compone de varios pasos.
- Primero se construye con MSBuild el lenguaje que hayamos programado, ya sea una solución, un proyecto de C#, un proyecto de Visual Basic, un proyecto de F#, etc.
- El mismo pasará al compilador de .NET, que actualmente es Roslyn, o en su defecto el de F# si fuera el caso.
- Después se obtiene un ejecutable (.EXE), un DLL si es una librería o lo que tengamos especificado a la hora de compilar.
Cuando ejecutamos este código vamos a obtener el lenguaje intermedio (IL), que es un lenguaje, que se parece mucho a una especie de ensamblador, que crea .NET para tener una identificación del código que hemos aplicado ya en alto nivel. Se podría asemejar al Bytecode de Java.
- El mismo pasará a Common Language Runtime (CLR), que es la especificación de .NET de la máquina virtual.
.NET es un lenguaje que se ejecuta y se lanza en Runtime, con lo cual tendríamos un compilador JIT, es decir, que se va ejecutando y compilando en el tiempo, a diferencia de otros compiladores como el de C, que son compiladores AOT, en los que se compila inicialmente y después se ejecuta.
- Finalmente se convierte a código nativo, es decir, en código ensamblador, y el mismo pasa a código binario.
- Entre medio de toda esa máquina virtual vamos a tener, como en muchos lenguajes de alto nivel, un garbage collector, es decir, no nos vamos a tener que preocupar en la liberación de memoria ni en que algo que se haya quedado colgado.
Aunque siempre puede ocurrir algún problema cuando no gestionamos bien ese código, y el garbage collector desconoce si tiene que eliminar algo o no, lo que ocurre en todos los lenguajes que tienen este sistema.
Si quieres ampliar tus conocimientos de C# puedes hacer este curso inicial de C# de nuestro profesor José Manuel Montero.
Recuerda que puedes comenzar este curso con tu suscripción en OpenWebinars. Si todavía no estás suscrito, aprovecha para hacerlo ahora.