El lenguaje de programación C# tiene ya casi 20 años. Su diseñador principal es Anders Hejlsberg un ingeniero danes lider de Turbo Pascal , Turbo Delphi y Typescript.

Esta estandarizado por ECMA con el estándar Ecma-334. Es un lenguaje que usa principalmente el paradigma de programación orientada a objetos pero puedes encontrar mucha influencia de programación funcional

Es un lenguaje compilado de tipado fuerte. Tiene 8 versiones y se esta trabajando en la version 9.0

Qué son los ensamblados en .NET

Los ensamblados en .NET son los tipos de archivos de salida del compilador y pueden tener extensiones .exe o dll

Código fuente

El código fuente es un archivo con codificación UTF que c

Compilador

Una practica frecuente entre los lenguajes de programación conocida como “dog fooding” es escribir el compilador del lenguaje en el mismo lenguaje. El compilador inicial de Microsoft estaba escrito en C++ pero se lanzo una nueva versión conocida con el nombre del proyecto Roslyn que usa el mismo C# para crear el compilador.

Decompilación

El proceso de compilación tiene un proceso inverso que permite generar el código fuente a partir de ensamblados.

Existen herramientas que te pueden ayudar a realizar el proeceso de descompilacion como son: