ANÚNCIO

~/questoes/programacao

O que é uma interface em TypeScript?

Responda, confira o feedback e use o resultado para orientar sua revisão.
Questão 1 Não respondida

O que é uma interface em TypeScript?

Aula de referência Mini curso prático de TypeScript
Para fixar

O que é uma Interface em TypeScript

Conceito central

Uma interface em TypeScript é um contrato que define a estrutura obrigatória de um objeto, especificando quais propriedades ele deve ter, seus tipos e se são opcionais ou obrigatórios. Interfaces são fundamentais para criar código mais seguro e organizado, permitindo que você garanta que objetos sigam um padrão específico.

Por que essa resposta faz sentido

A alternativa B está correta porque interfaces funcionam exatamente como um contrato: elas definem regras que um objeto deve seguir. Quando você cria uma interface, está dizendo 'todo objeto que use essa interface deve ter essas propriedades com esses tipos'. Isso garante consistência e previne erros durante o desenvolvimento.

Armadilhas comuns

  • Confundir interfaces com classes: interfaces definem apenas contratos (o quê), enquanto classes também implementam comportamento (como). No TypeScript, uma classe pode implementar uma interface.
  • Esquecer que interfaces são apenas para tipagem: interfaces desaparecem quando o TypeScript é compilado para JavaScript. Elas não existem em tempo de execução, servem apenas para garantir segurança de tipos durante o desenvolvimento.
  • Usar qualquer palavra-chave: alguns iniciantes tentam criar interfaces com type ou class em vez de interface. A palavra-chave interface é específica para esse propósito.

Entenda as alternativas

A

Bibliotecas externas podem adicionar funcionalidades ao navegador, mas interfaces não são bibliotecas. Elas fazem parte da sintaxe do TypeScript e existem apenas em tempo de desenvolvimento, não no navegador final.

B

Correta. Interfaces são contratos que definem estruturas obrigatórias de objetos. Quando você cria uma interface com propriedades específicas, qualquer objeto que a implemente deve respeitar essas regras de tipo e propriedades.

C

O compilador TypeScript (tsc) é responsável por compilar código em JavaScript, não as interfaces. Interfaces são apenas uma forma de definir tipos e estruturas, sem relação direta com a compilação.

D

Rotas de aplicações Express são definidas no código JavaScript/TypeScript, não em interfaces. Embora você possa usar interfaces para tipar dados de rotas, elas não servem especificamente para isso.

Dica prática: Na prática, crie interfaces para dados que vêm de APIs ou que você compartilha entre funções. Por exemplo, se sua API retorna um usuário com id, nome e email, crie uma interface Usuario para tipar esse dado em toda sua aplicação. Isso evita erros quando alguém tenta acessar uma propriedade que não existe.

Revise pensando: Se você precisasse garantir que um objeto sempre tivesse as propriedades 'nome' (string) e 'idade' (number), qual recurso do TypeScript você usaria e por quê?