En el argot de la programación se conoce como librería o biblioteca a
un archivo que contiene varios recursos programados
previamente con el fin de ser utilizados en el futuro por algún
programador. Algunas veces se distribuye entre los clientes en código
fuente (open source) y otras en forma de código ya compilado.
La primera exige entonces que el programador-usuario compile
el archivo para poder ser utilizado y la segunda requiere ya no
compilarlo sino incorporarlo al programa desde donde se le utilizará.
La segunda forma estará contenido bajo un formato ejecutable propio del
entorno de desarrollo utilizado siendo los más comunes .obj,
.lib,
.jad,
.exe
y en el caso de la plataforma .NET en formato PE (Programa Ejecutable)
donde una de las extensiones es .dll.
Para producir una librería
de modelos o clases de objetos utilizando el lenguaje Lexico
basta con programar las clases en un archivo fuente (extensión .lx)
e indicar al compilador (Generar
--> Propiedades
de compilación --> objetivo) que
produzca no un archivo independiente
ejecutable (extensión .exe)
sino un archivo ejecutable pero dependiente (extensión .dll)
de otro.
Utilización de las bibliotecas o librerías
Para utilizar clases ya programadas el programador-usuario
debe incorporar los archivos que las contengan ya definidas al trabajo
mediante la instrucción incluya.
Ejemplo: Se incorporan dos librerías. Una está en código fuente Lexico (.lx)
y la otra está ya compilada (.dll).
incluya
"Raices.lx",
"CPuntos.dll"
/*...aquí va el programa que utiliza recursos existentes en los
archivos Raices.lx(que contiene código fuente
aún no compilado) y CPuntos.dll (que
contiene código ya compilado para .NET)...*/
Si en Raices.lx estuviera definida la clase Cosa el programador podría utilizarla para crear un objeto de esa clase, tipo o modelo:
el objeto uno es una Cosa
Si en CPuntos.dllexistiera la clase Ojo, el programador podría utilizarla para crear objetos de esa clase, así:
1. Si quien programó la librería tuvo el buen estilo de crear un espacio de nombres, digamos llamado EmpresaX. Comunicaciones.Lan: deberá hacerse referenciando el espacio de nombres:
el objeto dos es un EmpresaX. Comunicaciones.Lan.Ojo
2. Si el programador no definió un espacio de nombres el compilador Lexico establece espacio de nombres con el nombre del archivo anteponiéndole En, por lo que el programador-usuario de la clase ha de crear el objeto utilizando el nombre de la clase precedida del espacio de nombres estandar:
el objeto tres es un EnCPuntos.Ojo
Ahorro de tiempo para el programador
Como puede observarse en varios ejemplos anteriores no se ha tenido en cuenta ni la instrucción incluya ni el espacio de nombresSystem.Windows.Forms. donde está definida la clase la clase Form programada en la plataforma .NET ni el archivo ya compilado o librería que la contiene System.Windows.Forms.dll. No ha sido necesario porque en Lexico
se han asumido automáticamente varias librerias de mucho uso. Cuando el
compilador dice no encontrar la clase es porque está mal deletreada,
porque requiere referenciarse dentro de su espacio de nombres o porque el archivo que la contiene aún no ha sido incluido para su utilización. Ver uso de
objetos compuestos