¿Qué es un Assembly?

6160 vistas

Los assembly son un elemento fundamental de la programación con el Framework .NET. Un assembly ejecuta las siguientes funciones:

  • Contiene el código de la Common Language Runtime ejecutado. El código MSIL (Microsoft Intermediate Language) que contenga un fichero ejecutable no se llegará a ejecutar si no tiene un assembly asociado. Tenemos que tener encuenta que un assembly sólo puede tener un punto de entrada (DllMain, WinMain o Main).
  • Crea un lÃmite de seguridad. Un assembly corresponde a la unidad a nivel de la cual se piden y acuerdan las autorizaciones.
  • Crea una limitación de tipos. La identidad de cada tipo incluye el nombre del assembly en el que reside. Una clase llamada MyType cargada en un assembly será diferente de una clase llamada MyType cargada en otro assembly.
  • Especifica las clases y los recursos visibles fuera del assembly.
  • Crea una limitación de versión. El assembly corresponde a la unidad versionable más pequeña de la Common Language Runtime; todos los tipos y recursos contenidos en el mismo assembly se versionarán bajo la forma de una unidad.
  • Crea una unidad de implantación. Cuando una aplicación arranca, sólo estarán presentes los assemblys que ésta llama inicialmente. Los otros assemblys, como los recursos de localización o los assemblys que contienen clases de utilidades, pueden extraerse bajo demanda. Ésto permite a las aplicaciones ser simples y básicas durante su primera carga.