¿Qué significa IL abstracto?

Resumen IL (Intermediate Language) es un kit de desarrollo de software (SDK) que consta de bibliotecas, documentación y otras herramientas de desarrollo que pueden utilizarse para manipular el contenido de .NET framework y archivos binarios a un alto nivel.

Resumen IL se puede utilizar en el código escrito en cualquier lenguaje .Net como C#, F#, etc. Su propósito principal es leer y modificar los binarios del código escrito en lenguaje de alto nivel, cuyos detalles de otra manera serían más engorrosos de acceder en formato binario. También se ha utilizado para lo siguiente:

  1. Como herramienta de compilación para código escrito en F#
  2. Para realizar análisis estáticos de código de verificación relacionado con la seguridad de acceso al código y para proyectos de programación orientada a aspectos.
  3. Una herramienta para desarrollar programas MS-ILX que contienen código escrito en lenguajes de programación funcional.

Ciberninjas explica el resumen de IL

El concepto de IL Abstracto es el resultado de los esfuerzos del grupo de Principios y Herramientas de Programación de Microsoft Research para construir una herramienta que pueda analizar, manipular y transformar ejecutables de .NET Framework.

Con esta característica, se puede desarrollar una amplia gama de aplicaciones para mejorar la seguridad, la detección de errores, las comprobaciones de seguridad dinámicas y las herramientas de optimización y creación de perfiles de IL.

El requisito para utilizar el SDK de Abstract IL con fines de desarrollo es tener el SDK de .NET Framework junto con un compilador de F#, ya que F# generalmente se considera la mejor herramienta para escribir código administrado (usando IL) en comparación con otros lenguajes .NET.

Para la implementación de programas .NET basados ​​en las bibliotecas de Abstract IDL, se debe proporcionar una copia de .NET Runtime Redistributable.

Además, el uso de Abstract IL evita la dependencia de tener ilasm.exe/ildasm.exe en la ruta, ya que se encarga de leer/escribir datos binarios.

La otra terminología que se utiliza habitualmente en relación con Abstract IL en .NET es Common IL. Common IL es la versión legible por humanos del código escrito en .NET que se puede ejecutar en un entorno compatible con Common Language Infrastructure (CLI), lo que ayuda a eliminar la dependencia de la plataforma o el tipo de CPU.

El IL común tiene como objetivo generar código que elimine la necesidad de distribuir archivos binarios separados para diferentes plataformas y tipos de CPU, junto con características de seguridad y confiabilidad mejoradas. Sin embargo, el IL abstracto está destinado a un mejor acceso a los archivos binarios de .NET.