Significado | Concepto | Definición:

La infraestructura de lenguaje común (CLI) es un conjunto de estándares técnicos internacionales que promueven la interoperabilidad del lenguaje de programación de computadoras . CLI también permite que muchos lenguajes de alto nivel desarrollen aplicaciones que son independientes de plataformas y arquitecturas. Hay más de 30 lenguajes de programación agrupados para este propósito y que hacen uso de cuatro divisiones de especificaciones de programación de lenguaje común para ser compatibles con CLI.

Mujer haciendo el pino con una computadora

Haciendo uso de lo que se llama un sistema de tipos comunes (CTS), usando un conjunto de tipos de datos y operaciones e información de metadatos en estructuras de programación, permite la escritura de código en varios idiomas. La CLI compila los lenguajes en un lenguaje intermedio común (CIL) y, desde CIL, comunica los aspectos de la aplicación al lenguaje de máquina ensamblador, que se ocupa del hardware. Además, existen especificaciones de lenguaje común (CLS), que son un conjunto de reglas base para su uso por cualquier lenguaje que busque interoperación, y un sistema de ejecución virtual (VES) para la carga, ejecución y generación de códigos de ejecución para todos los programas compatibles con CLI. .

La mayoría de los lenguajes compatibles con CLI se compilan directamente en CIL mediante el uso de Common Language Runtime (CLR). Después de haber sido recopilada y almacenada en caché, una justo a tiempo compilador continuación se apropia de código de máquina de la arquitectura existente. La construcción del código de la máquina de ensamblaje también se puede construir antes del CLR con un compilador adelantado.

Para que los lenguajes compatibles con CLI aprovechen la especificidad de los objetos, la infraestructura de lenguaje común especifica que los objetos solo necesitan exponer las características que tienen en común con los otros lenguajes compatibles con CLI cuando se llaman. Se dice que los componentes de código desarrollados para usar solo tipos de datos aceptados en el CTS son compatibles con CLI y accesibles para todos los demás lenguajes compatibles con CLI. Además, cualquier construcción de un lenguaje que no pueda ser verificado rápidamente por el tipo de seguridad del código se excluye del CLS, por lo que solo se puede decir que los códigos verificables cumplen con CLS.

Algunas funciones de programación son comunes tanto a los compiladores como a los desarrolladores y otras están disponibles solo para los compiladores. La lista es extensa y está llena de funciones útiles. Una característica disponible solo para los compiladores es: palabras clave que proporcionan identificadores de referencia y que pueden anular métodos virtuales con nombres que son palabras clave. Una característica disponible tanto para los compiladores como para los desarrolladores incluye: características modificadoras que dicen que una propiedad y sus evaluadores deben ser todos “estáticos”, todos deben ser “virtuales”, todos deben ser “instancia”.

Los programas de implementación son para computadoras de escritorio, servidores, dispositivos móviles y consolas de juegos. Los programas de mejora de la visión por computadora y los kits de herramientas de máquinas virtuales de bajo nivel también se desarrollan a partir de lenguajes compatibles con la infraestructura de lenguaje común. Los tiempos de ejecución de la infraestructura de lenguaje común asignan los recursos del sistema y llaman a los dispositivos periféricos de manera eficiente, aunque son independientes de la plataforma.