Pular para o conteúdo principal

Questão de Arquitetura de Software — Software — FCC 2023

Arquitetura de SoftwareSoftware
Código
fc069497
Banca
FCC
Órgão
TRT - 12ª Região (SC)
Ano
2023
Nível
Superior
Cargo
Analista Judiciário - Área de Apoio Especializado (Especialidade Tecnologia da Informação)
Considere o bloco de código TypeScript a seguir:pessoa = ['Paulo Freitas', 'Rua Barreto de Freitas ', 45];console.log(pessoa);Para que o bloco seja executado corretamente, em condições ideais, a tupla pessoa deve ter sido definida anteriormente pela instrução
  1. Alet pessoa[3];
  2. Blet pessoa: [string, string, number];
  3. Clet pessoa: typeof[String, String, Number];
  4. Dlet pessoa[string, string, number];
  5. Elet pessoa [3]: [any];
Revelar gabarito e comentário

GabaritoB — let pessoa: [string, string, number];

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”.

Tuplas em TypeScript

Gabarito: letra B. Para que a atribuição pessoa = ['Paulo Freitas', 'Rua Barreto de Freitas ', 45] funcione corretamente, a variável pessoa deve ser declarada como uma tupla com tipos [string, string, number]. A sintaxe correta em TypeScript é let pessoa: [string, string, number].

A banca testa o conhecimento da sintaxe de tuplas em TypeScript, que é uma linguagem de programação que adiciona tipagem estática ao JavaScript. Uma tupla é um array com tipos fixos e ordenados.

Alternativa

Descrição

Correta?

A

let pessoa[3];

❌ Incorreta

B

let pessoa: [string, string, number];

✅ Correta

C

let pessoa: typeof[String, String, Number];

❌ Incorreta

D

let pessoa[string, string, number];

❌ Incorreta

E

let pessoa [3]: [any];

❌ Incorreta

Alternativa A — ❌ Incorreta

A sintaxe let pessoa[3]; não é válida para declarar uma variável. Falta o sinal de atribuição (=) e a definição dos tipos. Além disso, [3] após o nome da variável não faz parte da declaração de tipo.

Alternativa B — ✅ Correta ⟵ GABARITO

let pessoa: [string, string, number]; define corretamente uma tupla onde o primeiro e segundo elementos são string e o terceiro é number. Essa declaração permite que o array seja atribuído exatamente como no código fornecido.

Alternativa C — ❌ Incorreta

typeof[String, String, Number] usa o operador typeof de forma incorreta. typeof é utilizado para obter o tipo de uma expressão em tempo de compilação, não para definir um tipo de tupla. Além disso, String e Number (com letra maiúscula) referem-se aos objetos construtores, não aos tipos primitivos string e number.

Alternativa D — ❌ Incorreta

let pessoa[string, string, number]; falta o sinal de : antes da anotação de tipo. A sintaxe correta exige : após o nome da variável para iniciar a declaração de tipo.

Alternativa E — ❌ Incorreta

let pessoa [3]: [any]; possui um espaço entre pessoa e [3], o que é inválido. Além disso, [3] parece tentar definir um array de tamanho 3, mas a sintaxe de tupla com tipos [any] não corresponde ao formato esperado de três elementos com tipos específicos.

PEGA ESSA DICA!

Em TypeScript, tuplas são declaradas entre colchetes com os tipos de cada posição, separados por vírgula. Use let nome: [tipo1, tipo2, ...] para definir uma tupla. Lembre-se de usar os tipos primitivos em minúsculo (string, number, boolean) e não os objetos construtores (String, Number, Boolean).

Link permanente: /questoes/fc069497