Capítulo 12. Montagens
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Até agora, neste livro, usei o termo componente para descrever uma biblioteca ou um executável. Chegou o momento de analisar mais de perto o que isso significa exatamente. No .NET, a unidade de implantação de um componente de software é chamada de assembly e, normalmente, é um arquivo .dll ou .exe. Os assemblies são um aspeto importante do sistema de tipos, pois cada tipo é identificado não apenas por seu nome e namespace, mas também pelo assembly que o contém. Os assemblies fornecem um tipo de encapsulamento que opera em uma escala maior do que os tipos individuais, graças ao especificador de acessibilidade internal, que funciona no nível do assembly.
O tempo de execução fornece um carregador de assemblagem, que encontra e carrega automaticamente as assemblagens de que um programa necessita. Para garantir que o carregador possa encontrar os componentes certos, os assemblies têm nomes estruturados que incluem informações de versão e podem, opcionalmente, conter um elemento globalmente exclusivo para evitar ambiguidade.
A maioria dos tipos de projeto C# na caixa de diálogo "Criar um novo projeto" do Visual Studio produz um único assembly como sua saída principal, assim como a maioria dos modelos de projeto disponíveis na linha de comando com dotnet new. Quando constrói um projeto, muitas vezes ele também coloca arquivos adicionais na pasta ...