Para qual linguagem o MSBuild compila seu código em C#?
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a C - MSIL.
Para compreender o motivo pelo qual a alternativa C é a correta, é necessário entender o processo de compilação do código em C# quando utilizamos o MSBuild, que é a ferramenta de compilação da plataforma .NET da Microsoft.
O MSBuild, abreviação para Microsoft Build Engine, é uma plataforma de compilação que automatiza o processo de conversão do código-fonte em programas executáveis ou bibliotecas. Quando o MSBuild processa o código em C#, ele compila esse código para uma linguagem intermediária chamada Microsoft Intermediate Language (MSIL), que é a alternativa correta (C).
A MSIL é um código de baixo nível, mas ainda não é código de máquina. Ela é independente de plataforma e CPU, o que permite que um mesmo programa .NET possa ser executado em diferentes sistemas operacionais e arquiteturas de processadores. Após a compilação para MSIL, durante a execução do programa, o runtime do .NET, chamado CLR (Common Language Runtime), compila o MSIL para o código de máquina nativo do sistema em que está rodando, através de um processo chamado Just-In-Time (JIT) compilation.
Portanto, a compilação do código em C# pelo MSBuild não resulta diretamente em código de máquina ou qualquer outro tipo de código executável nativo específico, mas sim em MSIL, que é uma camada de abstração entre o código-fonte de alto nível e o código de máquina.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Poderia ser MSIL, CIL ou IL.
"Common Intermediate Language (CIL), formerly called Microsoft Intermediate Language (MSIL) or Intermediate Language (IL), is the intermediate language binary instruction set"
https://en.wikipedia.org/wiki/Common_Intermediate_Language
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo