Buscar

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS EM ANDROID NOTA 7,0 AV

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Prezado(a) Aluno(a), 
Responda a todas as questões com atenção. Somente clique no botão FINALIZAR PROVA ao ter certeza de 
que respondeu a todas as questões e que não precisará mais alterá-las. 
 
A prova será SEM consulta. O aluno poderá fazer uso, durante a prova, de uma folha em branco, para 
rascunho. Nesta folha não será permitido qualquer tipo de anotação prévia, cabendo ao aplicador, nestes 
casos, recolher a folha de rascunho do aluno. 
Valor da prova: 10 pontos. 
 
 
 
1 ponto 
 
1. 
 
 
Indique, entre as opções abaixo, o comando utilizado para a criação de um aplicativo 
React Native. 
 (Ref.: 202008414929) 
 
 
npx react-native init nome_da_aplicacao 
 
 
npx start 
 
 
init virtual-device ou init physical-device 
 
 
expo init nome_da_aplicacao 
 
 
npm init nome_da_aplicacao ¿vd ou npm init nome_da_aplicacao ¿pd 
 
 
 
 
1 ponto 
 
2. 
 
 
(Cespe - 2012 - Banco da Amazônia - técnico científico - análise de sistemas) Existem 
várias maneiras de se depurar (debug) programas. Algumas delas envolvem 
conhecimento, prática e bom senso do programador. Sobre os pontos importantes para a 
depuração deles, julgue os itens a seguir. 
I. É possível encontrar falhas nos programas por meio da reprodução do erro em testes. 
II. Quanto maior a entrada de dados nos testes, mais fácil se torna encontrar o problema 
e a solução da falha. 
III. Em um programa modular, o processo de encontrar falhas requer uma menor 
variação de informações de entrada para que o programador possa encontrar o módulo 
com erros. 
IV. A passagem de parâmetros para variáveis auxiliares evita o uso de break points. 
V. A análise estruturada é a melhor maneira de encontrar erros em programação 
orientada a objetos. 
Estão corretos apenas os itens: 
 (Ref.: 202008414627) 
 
 
I e II 
 
 
IV e V 
 
 
III e IV 
 
 
II e V 
 
 
 I e III 
 
 
 
 
1 ponto 
 
3. 
 
 
Assinale, das opções a seguir, a afirmativa correta quanto ao propósito do componente 
SafeAreaView. 
 (Ref.: 202008415960) 
 
 
O objetivo do SafeAreaView é renderizar o conteúdo do aplicativo dentro dos limites 
da área segura de um dispositivo, sendo suportado apenas por dispositivos da 
plataforma iOS. 
 
 
O propósito do SafeAreaView é garantir que aplicativos que rodem na plataforma 
Android ocupem todo o espaço disponível na tela, sem serem escondidos por 
elementos de navegação ou outros quaisquer. 
 
 
Organizar dinamicamente os elementos da tela quando o teclado é exibido a fim de 
manter tanto o teclado quanto os demais elementos visíveis ao mesmo tempo. 
 
 
Definir componentes de segurança para a proteção de dados críticos, como senhas. 
 
 
Criar uma área na tela que permita que o teclado ocupe toda a área disponível, 
sobrepondo os demais elementos. 
 
 
 
 
1 ponto 
 
4. 
 
 
É muito comum carregarmos uma quantidade limitada de dados na renderização inicial de 
nosso aplicativo e, a partir daí, novos dados. Nesse contexto, assinale a alternativa que 
corresponde ao comportamento dos componentes de lista no que diz respeito ao 
carregamento de dados adicionais. 
 (Ref.: 202008416367) 
 
 
Tal funcionalidade não está disponível nos componentes de lista. Por outro lado, 
podemos capturar novos dados ''ouvindo'' seu estado (state) em outros componentes 
do aplicativo. 
 
 
Todos os componentes de lista presentes no React Native possuem propriedades e 
métodos nativos para tratar o carregamento de dados adicionais. Por meio deles, é 
possível tanto monitorar o acréscimo de novos dados como carregá-los sob demanda 
mediante uma interação por parte do usuário. 
 
 
O VirtualizedList é o único componente que não possui suporte nativo ao 
carregamento de dados adicionais, uma vez que é otimizado para lidar com dados 
imutáveis. 
 
 
As propriedades ou props recebidas como herança de componentes-pai, como View 
ou ScrollView, permitem aos componentes de lista monitorar eventuais atualizações 
nos dados por ele renderizados. 
 
 
Os componentes de lista disponíveis em React Native possuem um atributo chamado 
state, definido dentro do componente e responsável pelo controle do estado dos 
dados atribuídos a uma variável. 
 
 
 
 
1 ponto 
 
5. 
 
 
Os métodos da classe AsyncStorage permitem efetuar a manipulação de pares do tipo 
chave-valor em arquivos de texto, seguindo processos bastante simplificados, e atuando 
de forma assíncrona. Qual dos métodos de AsyncStorage permite a obtenção do valor 
armazenado no arquivo, a partir de uma chave fornecida? 
 (Ref.: 202008415533) 
 
 
mergeItem 
 
 
getAllKeys 
 
 
getItem 
 
 
removeItem 
 
 
setItem 
 
 
 
 
1 ponto 
 
6. 
 
 
O ambiente do React Native oferece componentes para as mais diversas situações, 
podendo contar com algumas bibliotecas nativas e outras importadas via NPM ou YARN. 
Qual biblioteca deve ser importada para permitir a escrita e leitura de pares chave-valor 
em arquivos de texto? 
 (Ref.: 202008415628) 
 
 
@types/react 
 
 
@react-navigation/native 
 
 
@react-navigation/stack 
 
 
@react-native-community/masked-view 
 
 
@react-native-async-storage/async-storage 
 
 
 
 
1 ponto 
 
7. 
 
 
A respeito do OAuth2 é correto afirmar: 
 (Ref.: 202008450227) 
 
 
Trata-se de um protocolo de segurança, uma evolução do HTTPS para aplicativos 
móveis. 
 
 
O OAuth, em conjunto com o Bearer Token, são usados como chave de segurança 
que permitem a utilização segura de recursos de terceiros. 
 
 
O OAuth2 é uma biblioteca disponível para o framework React Native que permite a 
realização de conexão remotas inseguras. 
 
 
Essa biblioteca, disponível tanto para sistemas Web como para aplicativos mobile, 
permite a realização de requisições a serviços REST de forma segura. 
 
 
É um framework de autorização que permite a um aplicativo ter acesso limitado e 
controlado a recursos de terceiros, como APIs. 
 
 
 
 
1 ponto 
 
8. 
 
 
Na definição de papéis existentes no framework OAuth2, é função do proprietário do 
recurso: 
 (Ref.: 202008450188) 
 
 
Fornecer o serviço de autorização de acessos remotos. 
 
 
Fornecer o serviço de autenticação e validação de credenciais. 
 
 
Provê os recursos e determinar o mecanismo de controle de acesso sob os quais os 
mesmos serão disponibilizados. 
 
 
Conhecer todas as aplicações clientes que desejam utilizar os recursos por ele 
disponibilizados. 
 
 
Gerar novas senhas a cada requisição recebida a partir de clientes externos. 
 
 
 
 
1 ponto 
 
9. 
 
 
O uso da arquitetura MVC permitiu uma boa organização das responsabilidades de cada 
tipo de componente utilizado na programação do aplicativo. Segundo o padrão 
arquitetural, no ambiente do React Native, em que camadas ficariam, respectivamente, 
uma classe DAO e um componente nativo JSX? 
 (Ref.: 202008416886) 
 
 
View e Controller. 
 
 
Model e View. 
 
 
Controller e View. 
 
 
Controller e Model. 
 
 
View e Model. 
 
 
 
 
1 ponto 
 
10. 
 
 
Um componente Reducer é parte integrante da arquitetura Redux, e tem como objetivo 
efetuar os processos necessários para a mudança do estado representado pelo 
componente Store. Quais são os requisitos para a definição de uma função Reducer? 
 (Ref.: 202008416821) 
 
 
Ela precisa receber um listener para o componente View e emitir o evento de 
atualização para o componente Store. 
 
 
Ela deve receber um componente View, obter os dados a partir dele, e utilizá-los para 
a modificação do estado atual do componente Store. 
 
 
Ela deve ser uma função assíncrona, sem retorno de valor, que recebe um 
componente Store e altera seu estado via callback. 
 
 
Ela deve ter como entrada um estado inicial e uma ação, além de retornar o estado 
modificado ao final da execução. 
 
 
Ela precisa apenas receber o Dispatcher e repassar a solicitação para o componente 
Store.

Outros materiais