Questão nº 29
Questão de Tecnologia da Informação · FCC TRF4 2019 (nº 29)
As linguagens de programação
- Acomo Java e C# têm seus códigos fontes transformados em uma linguagem intermediária (específica de cada linguagem), que será interpretada pela máquina virtual da linguagem quando o programa for executado. (alternativa correta)
- Bcomo C e Ruby são compiladas estaticamente e seus códigos-fontes são transformados diretamente em linguagem de montagem ou assembler.
- Cdo tipo script como VBScript e Lua são utilizadas em aplicações web. No caso de sites do WordPress, por exemplo, os desenvolvedores criam plug-ins e usam o VB para solicitar o conteúdo. O código é executado como HTML, permitindo que os visitantes do site visualizem o conteúdo em seus navegadores.
- Dorientadas a objeto são todas compiladas e não interpretadas, por isso são consideradas de baixo nível, sendo as mais utilizadas para programação de sistemas embarcados ou aplicações que exijam acesso direto a registros da memória.
- Einterpretadas têm seu código-fonte traduzido por um programa tradutor ou assembly, que em seguida é executado pelo sistema operacional. Um exemplo disso é o Bytecode, que é uma linguagem que passa pelo processo de interpretação e, em seguida, é executada por um compilador.
Resposta comentada
Gabarito Alternativa A
Linguagens de programação são conjuntos de instruções que um computador pode entender. Elas podem ser compiladas, onde todo o código é traduzido para a linguagem da máquina antes da execução, ou interpretadas, onde o código é traduzido e executado linha por linha em tempo real.
(A) Correta: Java e C# utilizam um modelo híbrido. Seus códigos-fonte são primeiro compilados para uma linguagem intermediária (Bytecode para Java, CIL para C#). Essa linguagem intermediária é então interpretada (e/ou compilada Just-In-Time) por uma máquina virtual (JVM para Java, CLR para C#) no momento da execução, tornando-as portáveis.
(B) Incorreta: C é compilada estaticamente para código de máquina (que pode passar por uma fase de montagem), mas Ruby é uma linguagem predominantemente interpretada, não compilada estaticamente.
(C) Incorreta: Esta alternativa contém múltiplas informações incorretas. WordPress utiliza PHP, não VBScript ou Lua, para seus plugins. Além disso, o código de script é executado no servidor (ou cliente) e gera HTML, ele não é "executado como HTML". A armadilha aqui é misturar termos familiares (web, WordPress) com fatos técnicos completamente errados.
(D) Incorreta: Linguagens orientadas a objeto podem ser compiladas (C, C#) ou interpretadas (Python, Ruby). Elas são consideradas linguagens de alto nível, não de baixo nível, e não são as mais utilizadas para acesso direto à memória ou sistemas embarcados em geral (embora C seja usada).
(E) Incorreta: Linguagens interpretadas são traduzidas por um interpretador, não necessariamente para assembly para execução direta pelo SO. Bytecode é uma linguagem intermediária (resultado de compilação) que é interpretada por uma máquina virtual, não "executada por um compilador" após a interpretação.
Fonte: FCC TRF4 2019 Técnico Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.