Questão de Engenharia de Software — Desenvolvimento de Software — INSTITUTO AOCP 2025
Engenharia de Software›Desenvolvimento de Software
Código
qg543506
Banca
INSTITUTO AOCP
Órgão
TRE-TO
Ano
2025
Nível
Superior
Cargo
Analista Judiciário - Área de Atividade: Apoio Especializado - Especialidade: Tecnologia da Informação
Com o crescimento da demanda por aplicativos móveis em ambientes corporativos e governamentais, torna-se essencial compreender os princípios que norteiam o desenvolvimento para dispositivos móveis, considerando limitações técnicas, contexto de uso e boas práticas de projeto. A respeito desse assunto, analise as assertivas e assinale a alternativa que aponta as corretas.I. O desenvolvimento para dispositivos móveis exige atenção à limitação de recursos como processamento, memória e energia, o que pode impactar diretamente a escolha de algoritmos e estruturas de dados.II. Aplicações móveis nativas oferecem melhor desempenho e integração com os recursos do dispositivo, mas exigem desenvolvimento específico para cada plataforma.III. A responsividade e a adaptação da interface são irrelevantes para aplicações móveis, já que a maioria dos dispositivos possui resolução de tela padronizada.IV. O uso de armazenamento local em dispositivos móveis é recomendado principalmente quando há necessidade de operação offline, como em áreas com conectividade limitada.
AApenas I e II.
BApenas II e IV.
CApenas I, II e IV.
DApenas I, III e IV.
EI, II, III e IV.
Revelar gabarito e comentário▾
GabaritoC — Apenas I, II e IV.
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”.
Desenvolvimento Mobile: princípios e boas práticas
Gabarito: letra C — corretos os itens I, II e IV. O desenvolvimento para dispositivos móveis exige atenção às limitações de recursos (processamento, memória, energia), aplicações nativas oferecem melhor desempenho e integração com o hardware, e o armazenamento local é recomendado para operação offline. O item III está incorreto, pois a responsividade e a adaptação da interface são essenciais, dado que os dispositivos possuem resoluções e tamanhos de tela variados.
O desenvolvimento mobile difere do desenvolvimento desktop/web em vários aspectos. Primeiro, os dispositivos móveis possuem recursos limitados — processador, memória RAM, armazenamento e, principalmente, bateria. Isso impacta diretamente a escolha de algoritmos e estruturas de dados, pois algoritmos ineficientes podem consumir mais energia e tornar o aplicativo lento ou até inviável. Por exemplo, um algoritmo de ordenação O(n²) em uma lista grande pode travar o dispositivo e drenar a bateria rapidamente, enquanto um O(n log n) seria mais adequado.
Segundo, existem diferentes abordagens de desenvolvimento: nativo, híbrido e web. Aplicações nativas são desenvolvidas para uma plataforma específica (Android com Kotlin/Java, iOS com Swift/Objective-C) e têm acesso direto aos recursos do dispositivo (câmera, GPS, sensores, notificações push), oferecendo melhor desempenho e integração. Porém, exigem desenvolvimento separado para cada plataforma, aumentando custo e tempo. Já as híbridas (como Flutter, React Native) permitem código único para múltiplas plataformas, mas com desempenho potencialmente inferior e acesso limitado a alguns recursos.
Terceiro, a interface do usuário em mobile precisa ser responsiva e adaptável. Diferente do que afirma o item III, não existe resolução padronizada: há uma enorme variedade de tamanhos de tela, densidades de pixels (dp, sp), orientações (retrato/paisagem) e até modos de acessibilidade (fonte grande, alto contraste). Ignorar isso resulta em botões cortados, textos ilegíveis e péssima experiência do usuário. O contexto de uso também varia: o usuário pode estar em movimento, com uma mão ocupada, sob luz solar intensa, etc.
Quarto, o armazenamento local (SQLite, Room, SharedPreferences, arquivos) é fundamental para operação offline, como em áreas com conectividade limitada ou para reduzir consumo de dados. Aplicativos de mapas, leitura de documentos e mensagens usam cache local para funcionar sem internet. Isso não significa que todo app deva usar armazenamento local — a decisão depende dos requisitos de disponibilidade e sincronização.
A banca explora a confusão entre "responsividade é irrelevante" (item III) e a realidade de que é um requisito essencial. O candidato que não conhece as particularidades do mobile pode marcar o item III como correto, caindo na pegadinha. A distinção crucial é: enquanto no desktop a resolução é relativamente padronizada, no mobile a diversidade é a regra.
Desenvolvimento mobile
1Limitações de recursos
Processamento
Memória
Energia
Impacto na escolha de algoritmos
2Abordagens
Nativa
Melhor desempenho
Integração com hardware
Exige código por plataforma
Híbrida
Código único
Desempenho inferior
3Interface
Responsividade essencial
Telas variadas
Contextos de uso
4Armazenamento local
Operação offline
Cache e sincronização
LEVEL · soulevel.com.br
Item I — ✅ Correto
O item está correto. Dispositivos móveis têm limitações de processamento, memória e energia, e isso influencia diretamente a escolha de algoritmos e estruturas de dados. Por exemplo, algoritmos com alta complexidade computacional podem esgotar a bateria rapidamente ou causar lentidão. O conteúdo de apoio reforça que "os desenvolvedores devem tentar descobrir algoritmos (ou adaptar os já existentes) que sejam eficientes com relação à energia para preservar a carga da bateria".
Item II — ✅ Correto
O item está correto. Aplicações nativas são desenvolvidas para uma plataforma específica (Android, iOS) e, por isso, têm melhor desempenho e integração com os recursos do dispositivo (câmera, GPS, sensores). No entanto, exigem desenvolvimento separado para cada plataforma, aumentando custo e esforço. O conteúdo de apoio menciona que "desenvolver e dar suporte para aplicativos em diversas plataformas é um processo dispendioso".
Item III — ❌ Incorreto
O item está incorreto. A responsividade e a adaptação da interface são essenciais em aplicações móveis, pois os dispositivos possuem tamanhos de tela, resoluções e densidades de pixels variados. Não existe resolução padronizada. O conteúdo de apoio destaca que "os dispositivos móveis têm telas menores do que os computadores pessoais" e que a interface deve se adaptar a diferentes contextos. A banca tenta fazer o candidato acreditar que a padronização existe, o que é falso.
Item IV — ✅ Correto
O item está correto. O armazenamento local é recomendado principalmente para operação offline, como em áreas com conectividade limitada. Isso permite que o aplicativo funcione sem internet, armazenando dados localmente (SQLite, arquivos, etc.) e sincronizando quando houver conexão. É uma prática comum em apps de mapas, leitura e mensagens.
Conclusão: corretos os itens I, II e IV, portanto a alternativa correta é a letra C.
NÃO CAIA NESSA!
A banca tenta fazer o candidato acreditar que a responsividade é irrelevante (item III), quando na verdade é um requisito fundamental no desenvolvimento mobile. A confusão surge porque, no desktop, as resoluções são mais padronizadas, mas no mobile a diversidade de telas é enorme. Fique atento: qualquer afirmação que minimize a importância da adaptação de interface em mobile está errada.
PEGA ESSA DICA!
Para questões sobre desenvolvimento mobile, lembre-se dos três pilares: (1) limitações de recursos (bateria, memória, processamento), (2) abordagens de desenvolvimento (nativo, híbrido, web) e (3) adaptação da interface (responsividade). Se uma assertiva negar qualquer um desses pilares, ela está incorreta.