Buscar

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS EM ANDROID

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 6 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

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 6, do total de 6 páginas

Prévia do material em texto

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS EM ANDROID 
Lupa Calc. 
 
 
 
 
 
EEX0141_202004305191_TEMAS 
 
Teste de Conhecimento 
Disc.: PROG DISP MÓVEIS 2022.1 EAD (GT) / EX 
 
Prezado (a) Aluno(a), 
 
Você fará agora seu TESTE DE CONHECIMENTO! Lembre-se que este exercício é opcional, mas não 
valerá ponto para sua avaliação. O mesmo será composto de questões de múltipla escolha. 
Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. 
Aproveite para se familiarizar com este modelo de questões que será usado na sua AV e AVS. 
 
 
 
 
 
02793SINTAXE E COMPONENTES DO REACT NATIVE 
 
 
1. 
 
 
Há duas formas para se instalar um pacote utilizando o NPM: local 
e global. Marque a alternativa correspondente ao comando para 
instalação local do Expo Cli. 
 
 
npm install expo-cli local 
 
 
npm install expo-cli 
 
 
install expo-cli 
 
 
local install expo-cli 
 
 
npx init expo-cli 
Data Resp.: 26/05/2022 16:26:43 
 
Explicação: 
A resposta certa é: npm install expo-cli 
 
 
 
 
 
2. 
 
 
Em relação ao ambiente de programação para dispositivos móveis, 
marque a alternativa verdadeira. 
 
 
Para testar aplicativos Android, é necessário ter um dispositivo móvel que utilize tal 
sistema operacional. 
 
 
Quando utilizamos o Expo CLI para criarmos nossas aplicações, não é possível, em um 
mesmo computador/ambiente, criar aplicações utilizando o React Native CLI. 
 
 
O Android Studio é a única IDE que pode ser usada para a codificação de aplicativos em 
React Native. 
 
 
É possível existir um ambiente de desenvolvimento heterogêneo, não havendo restrições 
quanto à utilização apenas de um gerenciador de pacotes, de uma mesma IDE ou mesmo 
de uma única forma de desenvolver e testar nossos aplicativos. 
 
 
A utilização de gerenciadores de pacotes facilita a configuração do ambiente de 
desenvolvimento. Com eles, nenhuma configuração se faz necessária em termos de 
softwares ou mesmo de configurações no sistema operacional. 
Data Resp.: 26/05/2022 16:27:53 
 
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp
javascript:diminui();
javascript:aumenta();
javascript:calculadora_on();
Explicação: 
A resposta certa é: É possível existir um ambiente de desenvolvimento heterogêneo, não 
havendo restrições quanto à utilização apenas de um gerenciador de pacotes, de uma mesma 
IDE ou mesmo de uma única forma de desenvolver e testar nossos aplicativos. 
 
 
 
 
 
 
02525INTERFACE GRÁFICA COM REACT NATIVE 
 
 
3. 
 
 
Em uma SectionList, uma propriedade define o ''agrupador'' ou 
definidor de cada seção a ser exibida. Indique a alternativa que 
corresponde a esse elemento. 
 
 
renderItem 
 
 
keyExtractor 
 
 
sections 
 
 
data 
 
 
renderSectionHeader 
Data Resp.: 26/05/2022 16:28:35 
 
Explicação: 
A resposta certa é: renderSectionHeader 
 
 
 
 
 
4. 
 
 
Em relação aos recursos de navegação disponíveis no framework 
React Native, é correto afirmar que: 
 
 
A navegação entre as telas em um aplicativo React Native, sem a instalação de bibliotecas 
extras, pode ser feita puramente com o código JavaScript. 
 
 
A utilização de elementos específicos e otimizados para navegação deve ser evitada, já 
que eles interferem na performance do aplicativo. Em seu lugar, é preciso dar preferência 
à criação de aplicativos com apenas uma tela, em que todo o conteúdo fica disponível em 
um único lugar. 
 
 
A organização de nosso código em diferentes pastas e códigos, separando, por exemplo, 
em scripts específicos os códigos de cada tela, é o suficiente para que seja possível 
navegar entre todas elas a partir de uma tela principal. 
 
 
É preciso instalar dependências/bibliotecas extras para a construção dos elementos de 
navegação, como, por exemplo, menus. 
 
 
A exemplo dos websites, é possível construir a navegação entre todas as telas do 
aplicativo utilizando apenas botões como elementos de link. 
Data Resp.: 26/05/2022 16:29:21 
 
Explicação: 
A resposta certa é: É preciso instalar dependências/bibliotecas extras para a construção dos 
elementos de navegação, como, por exemplo, menus. 
 
 
 
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp
 
 
 
02700PERSISTÊNCIA DE DADOS COM REACT NATIVE 
 
 
5. 
 
 
Observe o fragmento de código apresentado a seguir, parte de um 
aplicativo criado na plataforma React Native. 
 
 
Qual será o resultado da execução desse trecho de código? 
 
 
Uma conexão será obtida de forma síncrona, sendo utilizada, em seguida, para gerar uma 
transação e, a partir dela, alterar os dados do aluno 120076. 
 
 
Será efetuada uma conexão com o banco de dados, configurado para o arquivo 
''Escola.db'', e na sequência a tabela ALUNOS é gerada no banco. 
 
 
Será criado um banco de dados com o nome ALUNOS, e na sequência os registros 120076 
e ''Luiz Paulo'' serão removidos da tabela ''Escola.db''. 
 
 
Será criada uma tabela com o nome ''Escola.db'', sendo inserido um registro com o nome 
ALUNOS, e valores indefinidos, devido ao uso de interrogações. 
 
 
Uma conexão será obtida de forma assíncrona, sendo utilizada, a seguir, para iniciar uma 
transação e, a partir dela, inserir um registro no banco de dados. 
Data Resp.: 26/05/2022 16:31:20 
 
Explicação: 
A resposta certa é: Uma conexão será obtida de forma assíncrona, sendo utilizada, a seguir, 
para iniciar uma transação e, a partir dela, inserir um registro no banco de dados. 
 
 
 
 
 
6. 
 
 
As bases de dados NoSQL podem oferecer diferentes formas de 
armazenamento e representação de dados, normalmente sem um 
esquema fixo, motivo pelo qual temos a classificação de seus 
dados como semiestruturados. Qual das opções apresentadas a 
seguir se refere a um banco de dados NoSQL baseado em 
documentos? 
 
 
Google Big Quey 
 
 
Hbase 
 
 
Neo4J 
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp
 
 
MongoDB 
 
 
SQL Lite 
Data Resp.: 26/05/2022 16:32:51 
 
Explicação: 
A resposta certa é: MongoDB 
 
 
 
 
 
 
02358CONEXÃO REMOTA COM REACT NATIVE 
 
 
7. 
 
 
Tendo em vista o modelo Offline First, podemos considerar que 
um aplicativo aplica tal modelo caso: 
 
 
Não faça uso de recursos remotos e, portanto, não necessite de internet. 
 
 
Provenha um banco embarcado para armazenamento de dados relativos a preferências do 
usuário. 
 
 
Implemente o modelo SPA - Single-page Application. 
 
 
Ofereça os mesmos recursos e funcionalidades, incluindo o consumo de recursos remotos, 
estando ou não conectado à internet. 
 
 
Ofereça recursos otimizados permitindo a economia no consumo de internet, sobretudo 
quando utilizado em redes que não sejam Wi-fi. 
Data Resp.: 26/05/2022 16:33:41 
 
Explicação: 
No contexto atual a infraestrutura de telecomunicações está avançando ao longo dos anos. No 
entanto, nos deparamos com situações em que ficamos com nossos dispositivos móveis 
"offline". Em termos conceituais, um aplicativo desenvolvido seguindo os princípios da 
arquitetura Offline First é um aplicativo que funciona de forma semelhante independente de 
possuir ou não conexão com a internet. 
 
 
 
 
 
8. 
 
 
O desenvolvimento de um aplicativo multiusuário, considerando o 
modelo Offline First, faz com que alguns cuidados extras sejam 
tomados, como a identificação correta do usuário. Isso porque: 
 
 
A autenticação é individual. Logo, as credenciais para acesso aos recursos remotos variam 
de usuário para usuário. 
 
 
Os dados, no modelo Offline First, são armazenados localmente e posteriormente 
sincronizados com os dados existentes remotamente. Não identificaro usuário relativo a 
cada dado geraria inconsistência nos mesmos, uma vez que não seria possível identificar o 
responsável por cada informação, por exemplo. 
 
 
Cada usuário tem um gosto diferente. Logo, as telas do aplicativo, além de otimistas, 
precisam agradar a cada um de seus usuários. 
 
 
Cada usuário tem suas próprias preferências. Logo, cada um poderá optar por sincronizar 
os dados em momentos distintos. 
 
 
Para funcionar corretamente, o aplicativo precisa vincular e armazenar o token de acesso 
recebido a casa usuário logado. 
Data Resp.: 26/05/2022 16:34:36 
 
Explicação: 
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp
Os aplicativos quando iniciados devem verificar se o dispositivo possui acesso à internet, pois 
em caso negativo, o aplicativo deverá usar um banco de dados embarcado que fica salvo e 
disponível apenas no dispositivo de cada usuário. A não identificação do usuário relativo a cada 
dado geraria inconsistência nos mesmos. 
 
 
 
 
 
 
02826TÓPICOS AVANÇADOS EM REACT NATIVE 
 
 
9. 
 
 
Muitas vezes, precisamos testar a conexão com um banco de 
dados ou servidor na rede, antes que ele seja implementado. Qual 
instrumento de programação poderia ser utilizado para viabilizar 
os testes na situação descrita? 
 
 
componente mock 
 
 
operador toEqual 
 
 
função test 
 
 
função expect 
 
 
modificador async 
Data Resp.: 26/05/2022 16:35:20 
 
Explicação: 
Objetos mock, ou simulados, desviam o fluxo de execução normal, e devem ser utilizados para 
fornecer as respostas previstas por determinado servidor. O uso de um mock elimina a 
necessidade de construir um servidor físico para efetuar testes, nas fases iniciais do 
desenvolvimento, e mantém a compatibilidade com os processos normais de verificação. 
 
 
 
 
 
10. 
 
 
Entre os requisitos de segurança da plataforma Android, 
atualmente não é aceitável que o mesmo IV seja utilizado na 
geração sequencial de chaves. Ao utilizar a biblioteca CryptoJS, 
portada para React Native de sua verão NodeJS, qual comando 
seria utilizado para criar um IV formado por valores aleatórios? 
 
 
CryptoJS.lib.ByteArray.createIV([128,16]) 
 
 
CryptoJS.lib.WordArray.random(16) 
 
 
CryptoJS.lib.generateIV(128/8) 
 
 
CryptoJS.IV.getVector(128) 
 
 
CryptoJS.lib.IV.createFrom(''randomBytes'') 
Data Resp.: 26/05/2022 16:36:10 
 
Explicação: 
Com o módulo lib, oferecido na biblioteca CryptoJS, temos diversas classes e métodos utilitários 
para as atividades acessórias de processos criptográficos, como geração de números aleatórios, 
que podem ser utilizados na construção do IV e do SALT. O método random, de WordArray, 
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp
https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp
acessado no módulo lib de CryptoJS, retorna um vetor de números aleatórios de 32 bits (Word), 
com o tamanho sendo fornecido como parâmetro.

Outros materiais