El ensamblaje es una sola unidad implementable y consta de MSIL, metadatos, etc. Los ensamblajes pueden ser DLL o .EXE. El montaje proporciona seguridad y límite de tipo también.
Tipos de montaje:
- Asamblea Privada: Es accesible por una sola aplicación.
- Ensamblaje compartido: Es accesible por múltiples aplicaciones.
Según la creación, los ensamblajes se clasifican en dos, a saber, estáticos y dinámicos.
- Ensamblaje estático: Se crea cuando compilamos nuestro código usando el compilador.
- Ensamblaje Dinámico: Se crea durante el tiempo de ejecución.
También consta de metadatos de ensamblaje que se conocen como Manifiesto de ensamblaje. La información sobre la versión del ensamblado, los recursos que necesita el ensamblado y el alcance del ensamblado se almacena en el archivo de manifiesto.
Una versión del ensamblado determina los tipos y otros recursos utilizados por esa aplicación. Los ensamblajes también brindan seguridad y delimitan el tipo. Podemos especificar el permiso cuando construimos nuestros ensamblajes. Cuando los ensamblados se cargan en el tiempo de ejecución, el ensamblado envía la solicitud de concesión de permiso. El motor de seguridad está verificando eso usando políticas de seguridad. El nombre del tipo y su ensamblado correspondiente determinan la identidad del tipo. Por lo tanto, dos tipos con el mismo nombre pero diferentes ensamblajes se pueden administrar de forma independiente.
El conjunto se puede guardar en un solo archivo o en varios archivos. El archivo único significa que el código MSIL, los metadatos, los recursos y los metadatos del ensamblado están todos en un solo archivo. Por otro lado, se pueden separar en diferentes archivos. Eso se conoce como ensamblaje de archivos múltiples. Se utiliza un enlazador de montaje para enlazar todos los módulos en el caso de estructuras múltiples. También es posible compartir los ensamblajes entre varias aplicaciones agregando ensamblajes a la memoria caché global de ensamblajes.
ventajas:
- Se implementa como .exe o .dll.
- Se carga en la memoria siempre que sea necesario.
- Podemos compartir ensamblados entre aplicaciones usando GAC (Global Assembly Cache).
- El sistema. El espacio de nombres de Reflection tiene clases como Assembly que se pueden usar para obtener los detalles del ensamblaje y, con eso, también es posible cargar un ensamblaje dinámicamente en tiempo de ejecución.
- Aumenta el rendimiento general.
Publicación traducida automáticamente
Artículo escrito por akshaysobti15 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA