Questão de Programação — Web — Avança SP 2025
- Código
- qg425158
- Banca
- Avança SP
- Órgão
- UNITAU
- Ano
- 2025
- Nível
- Superior
- Cargo
- Programador Pleno
- AFlask
- BSpring
- CAngular
- DDjango
- EReact
GabaritoC — Angular
Gabarito: letra C. Angular é um framework frontend, pois atua na camada de interface com o usuário no navegador, enquanto Flask, Django (Python) e Spring (Java) são frameworks backend, que processam requisições no servidor; React, embora frontend, é uma biblioteca, não um framework. A distinção central está na camada de atuação: frontend (cliente/navegador) versus backend (servidor).
No desenvolvimento web, o frontend é a parte da aplicação com a qual o usuário interage diretamente — a interface gráfica, os formulários, as animações e a apresentação dos dados. O backend, por sua vez, é a camada que roda no servidor, responsável por processar requisições, acessar bancos de dados, aplicar regras de negócio e devolver respostas. Essa separação é fundamental para entender o que cada ferramenta faz.
Um framework é um conjunto de ferramentas, bibliotecas e convenções que fornecem uma estrutura base para o desenvolvimento de aplicações, facilitando tarefas comuns e padronizando o código. No contexto web, existem frameworks específicos para cada camada: os frameworks frontend (ou client-side) rodam no navegador e gerenciam a interface; os frameworks backend (ou server-side) rodam no servidor e cuidam da lógica de negócio.
A confusão entre essas categorias é comum, especialmente porque algumas tecnologias podem atuar em ambas as frentes (como JavaScript, que originalmente era só frontend, mas com Node.js passou a ser usado também no backend). No entanto, as alternativas desta questão apresentam ferramentas bem definidas: Flask e Django são frameworks Python para backend; Spring é um framework Java para backend; React é uma biblioteca JavaScript para frontend; e Angular é um framework JavaScript para frontend.
A pegadinha da banca está em incluir React, que também é frontend, mas não é um framework — é uma biblioteca. A diferença entre framework e biblioteca é sutil, mas importante: uma biblioteca oferece funções específicas que o desenvolvedor chama quando quer (inversão de controle: o código chama a biblioteca), enquanto um framework define a arquitetura da aplicação e controla o fluxo (o framework chama o código do desenvolvedor). Angular é um framework completo, com estrutura opinativa, enquanto React é uma biblioteca focada na criação de componentes de interface.
Guarde o critério decisivo: camada de atuação (frontend × backend) e natureza (framework × biblioteca). É exatamente nesses dois eixos que as alternativas se dividem.
Flask é um microframework backend para Python, usado para criar APIs e aplicações web no servidor. Ele não atua no navegador, portanto não é um framework frontend. A banca o inclui para testar se o candidato sabe diferenciar as camadas.
Spring é um framework backend para Java, amplamente usado no desenvolvimento de aplicações empresariais e APIs REST. Ele roda no servidor, processando requisições e gerenciando a lógica de negócio, não a interface do usuário.
Angular é um framework frontend JavaScript, mantido pelo Google, usado para construir interfaces de usuário dinâmicas e aplicações de página única (SPA). Ele roda no navegador e fornece uma estrutura completa com componentes, roteamento, injeção de dependência e outras funcionalidades. É exatamente o que a questão pede.
Django é um framework backend para Python, conhecido por sua abordagem "baterias incluídas", com ORM, autenticação e admin integrados. Ele processa requisições no servidor e não atua na interface do usuário.
React é uma biblioteca frontend JavaScript, não um framework. Embora atue na camada de interface, a banca explora a distinção entre biblioteca e framework: React fornece componentes e um modelo de renderização, mas não impõe uma arquitetura completa como o Angular faz. Por isso, não é a resposta correta.
A banca coloca React (letra E) como distrator porque ele também é frontend. O candidato desatento pode marcá-lo, mas a questão pede um framework, e React é uma biblioteca. Lembre-se: framework = estrutura completa que controla o fluxo; biblioteca = conjunto de funções que você chama. Angular é framework; React é biblioteca.
Para não errar mais, monte uma tabela mental das tecnologias mais cobradas:
Tecnologia | Linguagem | Camada | Tipo |
|---|---|---|---|
Angular | JavaScript/TypeScript | Frontend | Framework |
React | JavaScript | Frontend | Biblioteca |
Vue.js | JavaScript | Frontend | Framework |
Flask | Python | Backend | Microframework |
Django | Python | Backend | Framework |
Spring | Java | Backend | Framework |
Na prova, identifique primeiro se a pergunta é sobre frontend ou backend e depois se pede framework ou biblioteca. Isso elimina a maioria das alternativas.
Gabarito: letra C
Link permanente: /questoes/qg425158