Baixe o app para aproveitar ainda mais
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.
Compartilhar