Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — Avança SP 2024

ProgramaçãoLinguagens de programação
Código
qg078052
Banca
Avança SP
Órgão
CISBRA - SP
Ano
2024
Nível
Superior
Cargo
Analista em T.I
Analise o seguinte código de declaração de método e, em seguida, identifique qual sua linguagem nativa.39.png 316×189
  1. AJavascript
  2. BJava
  3. CPHP
  4. D.NET
  5. EGo
Revelar gabarito e comentário

GabaritoC — PHP

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Identificação de linguagem de programação por sintaxe

Gabarito: letra C. O código de declaração de método apresentado na imagem é nativo da linguagem PHP, que utiliza o prefixo $ para declarar variáveis e a sintaxe function nome($parametro) para métodos — características que não aparecem em Java, JavaScript, .NET ou Go. A resposta é determinada pela análise da sintaxe do código, que é o critério central desta questão.

A questão pede que o candidato reconheça a linguagem de programação a partir de um trecho de código. Esse tipo de cobrança é comum em concursos de TI e exige familiaridade com a sintaxe básica das principais linguagens. O elemento mais distintivo no código é o uso do cifrão ($) antes dos nomes de variáveis e parâmetros — um marcador sintático que, entre as alternativas apresentadas, só existe no PHP. Em Java e JavaScript, variáveis são declaradas sem prefixo; em Go, usa-se := para inferência de tipo; e em .NET (C#), a declaração é feita com o tipo explícito ou var.

A sintaxe de declaração de métodos também ajuda a diferenciar as linguagens. No PHP, um método é declarado com a palavra-chave function, seguida do nome e dos parâmetros entre parênteses, cada um prefixado com $. Em Java e C#, a declaração exige o tipo de retorno e o modificador de acesso (ex.: public void metodo()). Em JavaScript, usa-se function nome(parametro) sem o $. Em Go, a sintaxe é func nome(parametro tipo) tipoRetorno. Essas diferenças tornam o reconhecimento relativamente direto quando se conhece a assinatura típica de cada linguagem.

A pegadinha desta questão está em confundir PHP com JavaScript, pois ambas usam a palavra function para declarar funções. No entanto, o prefixo $ nas variáveis é exclusivo do PHP — em JavaScript, as variáveis são declaradas com var, let ou const, sem qualquer prefixo. Outra confusão possível é com Java, que também é uma linguagem orientada a objetos, mas cuja sintaxe de declaração de métodos é completamente diferente, exigindo tipo de retorno e modificadores de acesso.

Para resolver questões desse tipo, o candidato deve observar atentamente os marcadores sintáticos presentes no código: prefixos de variáveis, palavras-chave de declaração, tipos explícitos e a estrutura geral da assinatura. Cada linguagem tem um "sotaque" próprio que permite identificá-la rapidamente. No caso do PHP, o $ é o sinal mais forte; em Java e C#, a presença de tipos e modificadores; em JavaScript, a ausência de tipos e o uso de function; em Go, a palavra func e a inferência de tipos.

Guarde o critério decisivo: o prefixo $ em variáveis e parâmetros é a marca registrada do PHP — é exatamente nesse detalhe que as alternativas se separam.

Alternativa A — ❌ Incorreta

JavaScript também usa a palavra function para declarar funções, o que pode confundir. Porém, em JavaScript as variáveis e parâmetros não são prefixados com $ — usam-se var, let ou const para variáveis, e os parâmetros são escritos sem prefixo. O código com $ não é JavaScript nativo.

Alternativa B — ❌ Incorreta

Java é uma linguagem fortemente tipada e orientada a objetos, mas sua sintaxe de declaração de métodos exige o tipo de retorno e, em geral, modificadores de acesso (ex.: public void metodo()). Não utiliza $ para variáveis nem a palavra function para declarar métodos — usa o nome do método seguido de parênteses, precedido pelo tipo de retorno.

Alternativa C — ✅ Correta ⟵ GABARITO

O PHP é a única linguagem entre as alternativas que utiliza o prefixo $ em todas as variáveis e parâmetros, e declara funções/métodos com a palavra-chave function. A sintaxe function nome($parametro) é nativa do PHP, o que torna esta a resposta correta.

Alternativa D — ❌ Incorreta

.NET não é uma linguagem de programação, mas uma plataforma que engloba várias linguagens, como C# e VB.NET. Em C#, a declaração de métodos exige tipo de retorno e modificadores de acesso (ex.: public void Metodo()), e as variáveis são declaradas com tipo explícito ou var — sem prefixo $ e sem a palavra function.

Alternativa E — ❌ Incorreta

Go (Golang) declara funções com a palavra-chave func, seguida do nome, parâmetros com tipo explícito e tipo de retorno (ex.: func nome(parametro string) string). Não utiliza $ para variáveis nem a palavra function. A sintaxe apresentada não corresponde ao Go.

PEGA ESSA DICA!

Para identificar a linguagem por sintaxe, procure os marcadores mais distintivos: o $ no PHP, os tipos explícitos e modificadores no Java/C#, a palavra func no Go, e a ausência de tipos com function no JavaScript. Treine com exemplos de cada linguagem para fixar essas diferenças.

Gabarito: letra C

Link permanente: /questoes/qg078052