2010-09-16 13 views

Respuesta

3

Una biblioteca nativa es una biblioteca escrita en un lenguaje que compila hasta el código nativo para la plataforma en la que se ejecuta, es decir, C++ crea archivos PE con código x86. Un enlace o enlace de idioma es el "pegamento" que hace posible/más cómodo utilizar una biblioteca de otro lenguaje de programación, posiblemente proporcionando una interfaz más elegante que simplemente llamar directamente al código nativo (piense: mejor que P/Invocar, por ejemplo).

La pregunta de por qué es necesaria es simple: Utilizar la gran cantidad de bibliotecas existentes.

2

¿Por qué es necesario? Parcialmente porque las partes de las habilidades del lenguaje están fuera de la equivalencia de Turing. Turing Equivalence dice que todos los lenguajes completos de Turing (que incluyen la mayoría de los lenguajes de programación) pueden calcular lo mismo. Lo que significa cualquier cosa que puedas hacer en un idioma que puedas hacer en otro, con varias advertencias importantes.

advertencias importantes incluyen

a) Puede ser que sea mucho más difícil de escribir código para hacer x en la lengua A continuación, código de idioma B.
b) que hace x en Lengua B podría ser más rápido que la lengua A.
c) el código para hacer x ya esté escrito en la forma de una buena biblioteca en lenguaje a, pero no el lenguaje B.

d) código en un idioma puede ser más escalable (más fácil de manejar grandes masas de código) luego en otro idioma.

e) Por lo general, no solo necesita hacer cálculos matemáticos, sino también entradas/salidas con archivos locales, bases de datos, archivos accedidos por red, servicios web, gui incluyendo servidor de ventanas del sistema y posiblemente toolkit, y acceso al Api 3d que conduce la tarjeta de gráficos.

Estos motivos, especialmente e describen por qué es posible que desee hacer enlaces/ajustar un código escrito con frecuencia en un lenguaje de sistema de nivel inferior para usarlo como parte de una aplicación escrita en un lenguaje de nivel superior. La conexión de fragmentos de código escritos en diferentes idiomas también se puede lograr a través de la comunicación del código, como las bases de datos/la comunicación entre procesos/servicios web.

Cuestiones relacionadas