Pular para o conteúdo principal

Questão de Programação — Frameworks em Programação — FUNDATEC 2025

ProgramaçãoFrameworks em Programação
Código
qg475005
Banca
FUNDATEC
Órgão
PROCERGS
Ano
2025
Nível
Superior
Cargo
Analista em Computação/Ênfase em Programação de Sistemas na Tecnologia Microsoft
Um relatório de alta demanda da Controladoria-Geral da União (CGU) executa consultas simples em Structured Query Language (SQL), com latência mínima e mapeamento leve. Qual escolha é a mais adequada?
  1. ADapper para consultas simples e de altíssimo desempenho, com SQL explícito e parametrização segura, evitando overhead de um mapeamento objeto-relacional completo.
  2. BEntity Framework (EF) Core com change tracking avançado, usando Language Integrated Query (LINQ) e rastreamento para acelerar materializações em leitura intensiva.
  3. CORM completo com migrações automáticas, mesmo sem necessidade de tracking, para padronizar acesso e facilitar evolução de esquema.
  4. DADO.NET (ActiveX Data Objects para .NET) puro é sempre superior ao Dapper, pois elimina qualquer camada e reduz todos os custos ao mínimo possível em qualquer cenário.
  5. EAbstração total do SQL, delegando ao provedor a geração de comandos para garantir portabilidade sem escrever consultas.
Revelar gabarito e comentário

GabaritoA — Dapper para consultas simples e de altíssimo desempenho, com SQL explícito e parametrização segura, evitando overhead de um mapeamento objeto-relacional completo.

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

Escolha de ferramenta de acesso a dados no .NET

Gabarito: letra A. O cenário descrito — consultas SQL simples, alta demanda, latência mínima e mapeamento leve — exige uma ferramenta que ofereça o máximo de desempenho com o mínimo de overhead. O Dapper é um micro-ORM que se encaixa perfeitamente: permite escrever SQL explícito com parametrização segura, sem o peso de um ORM completo, resultando em alta performance. As demais alternativas incorrem em complexidade ou desempenho inferiores para esse contexto.

Ferramenta

Tipo

Desempenho

Controle sobre SQL

Overhead

Adequação ao cenário

Dapper (A)

Micro-ORM

Altíssimo

Total (SQL explícito)

Mínimo

✅ Ideal

EF Core (B)

ORM completo

Médio/Alto

Parcial (LINQ)

Alto (change tracking)

❌ Excessivo

ORM completo c/ migrações (C)

ORM completo

Médio

Baixo (geração automática)

Alto

❌ Pesado

ADO.NET puro (D)

Acesso direto

Máximo

Total

Nenhum (código boilerplate)

❌ Baixa produtividade

Abstração total do SQL (E)

Abstração

Variável

Nenhum

Alto

❌ Contrário ao requisito

Alternativa A — ✅ Correta ⟵ GABARITO

O Dapper é um micro-ORM de altíssimo desempenho, criado pela equipe do Stack Overflow. Ele mapeia resultados de consultas SQL para objetos de forma leve, sem rastreamento de mudanças ou geração automática de SQL. Para relatórios com consultas simples e necessidade de baixa latência, é a escolha ideal.

Alternativa B — ❌ Incorreta

O Entity Framework Core com change tracking avançado é um ORM completo, que adiciona overhead significativo (rastreamento de mudanças, materialização de objetos, etc.). Embora possa ser otimizado, não é a melhor opção para consultas simples e de alto desempenho, pois o rastreamento e a abstração tornam a operação mais lenta que o Dapper.

Alternativa C — ❌ Incorreta

ORM completo com migrações automáticas é útil para aplicações complexas com evolução de esquema, mas é excessivamente pesado para consultas simples. As migrações e o mapeamento completo adicionam complexidade e degradam a performance, contrariando o requisito de latência mínima.

Alternativa D — ❌ Incorreta

ADO.NET puro é de baixo nível e permite performance extrema, mas exige muito código boilerplate e não oferece mapeamento automático para objetos. Dapper, por sua vez, é uma camada fina sobre o ADO.NET que fornece mapeamento leve sem perda significativa de performance, sendo mais produtivo. Afirmar que ADO.NET é "sempre superior" é falso: Dapper é uma abstração leve que mantém o controle e a performance.

Alternativa E — ❌ Incorreta

Delegar totalmente a geração de SQL ao provedor (abstração total) é o oposto do que se deseja: o enunciado diz que as consultas são em SQL explícito. A abstração total esconde o SQL e pode gerar consultas ineficientes, além de impedir a otimização manual necessária para alta performance.

PEGA ESSA DICA!

Em questões de escolha de tecnologia, foque nos requisitos: performance máxima + simplicidade → micro-ORM (Dapper). Se houver necessidade de rastreamento de mudanças ou relacionamentos complexos, aí sim o EF Core é mais indicado. Memorize essa distinção para provas.

Gabarito: letra A

Link permanente: /questoes/qg475005