Baixe o app para aproveitar ainda mais
Prévia do material em texto
· Pergunta 1 1 em 1 pontos O Redux-Saga é uma biblioteca que, junto com o Redux, permite que possamos compartilhar os estados entre vários componentes. Pensando em um aplicativo que utiliza essa biblioteca, que precise buscar uma informação na internet e compartilhá-la com vários componentes, qual o melhor fluxo a ser seguido: Resposta Selecionada: c. O aplicativo, no primeiro componente, deve chamar uma action que por sua vez, chamará um Saga para realizar a conexão. Após finalizar a conexão, o Saga mandará a informação para o reducer que, por fim, distribuirá a informação entre os componentes. Respostas: a. O aplicativo, no primeiro componente, deve chamar uma reducer que por sua vez, chamará um Saga para realizar a conexão. Após finalizar a conexão, o Saga mandará a informação para o action que, por fim, distribuirá a informação entre os componentes. b. O aplicativo, no primeiro componente, deve chamar uma action que por sua vez, chamará um Saga para realizar a conexão. Após finalizar a conexão, o Saga chamará uma action que mandará a informação para o reducer que, por fim, distribuirá a informação entre os componentes. c. O aplicativo, no primeiro componente, deve chamar uma action que por sua vez, chamará um Saga para realizar a conexão. Após finalizar a conexão, o Saga mandará a informação para o reducer que, por fim, distribuirá a informação entre os componentes. d. O aplicativo, no primeiro componente, deve chamar um Saga para realizar a conexão. Após finalizar o Saga mandará a informação para o reducer que, por fim, distribuirá a informação entre os componentes. e. O aplicativo, no primeiro componente, deve chamar um action para realizar a conexão. Após finalizar a conexão, o action mandará a informação para o reducer que, por fim, distribuirá a informação entre os componentes. Comentário da resposta: Reposta correta: c) O aplicativo, no primeiro componente, deve chamar uma action que por sua vez, chamará um Saga para realizar a conexão. Após finalizar a conexão, o Saga mandará a informação para o reducer que, por fim, distribuirá a informação entre os componentes. Todas as chamadas para os Sagas e os reducers devem ser realizadas através de uma action. Por isso, o fluxo da alternativa C está correta, pois sempre é chamado o action para distribuir a informação. · Pergunta 2 1 em 1 pontos Quando estamos desenvolvendo em React Native, queremos criar uma tela que mostrará mais de 100 itens que o usuário inseriu. Para realizar essa função, responda: Quais seriam os componentes possíveis e, se houver mais de um, qual seria o mais indicado para esse caso? Resposta Selecionada: b. O ScrollView e o Flatlist realizam a rolagem de elementos, porém o ScrollView carrega todos os elementos de uma única vez, enquanto o FlatList somente carrega os elementos que estão sendo visualizados na tela. Por este motivo, o FlatList é o mais indicado. Respostas: a. Somente o ScrollView permite a rolagem de elementos com barra de rolagem. b. O ScrollView e o Flatlist realizam a rolagem de elementos, porém o ScrollView carrega todos os elementos de uma única vez, enquanto o FlatList somente carrega os elementos que estão sendo visualizados na tela. Por este motivo, o FlatList é o mais indicado. c. O ScrollView e o Flatlist realizam a rolagem de elementos, porém o ScrollView carrega todos os elementos utilizando a tela inteira da tela, enquanto o FlatList somente carrega os elementos em uma área menor. Por este motivo, o ScrollView é o mais indicado. d. Somente o FlatList permite a rolagem de elementos com barra de rolagem. e. O ScrollView e o Flatlist realizam a rolagem de elementos, porém o ScrollView carrega somente elementos como View enquanto o FlatList todos os tipos de elementos. Por este motivo, o FlatList é o mais indicado. Comentário da resposta: Reposta correta: b) O ScrollView e o Flatlist realizam a rolagem de elementos, porém o ScrollView carrega todos os elementos de uma única vez, enquanto o FlatList somente carrega os elementos que estão sendo visualizados na tela. Por este motivo, o FlatList é o mais indicado. Ambos realizam a rolagem de elementos, mas o ScrollView carrega todos os elementos. Então em uma lista com 100 itens, ele irá consumir muita memória. Já o FlatList carrega somente os itens que estão na tela, utilizando muito menos memória e, por isso, é o mais indicado. · Pergunta 3 1 em 1 pontos Ao iniciarmos um novo projeto, qual é o melhor caminho que podemos tomar entre o Manage workflow e o Bare Workflow? Resposta Selecionada: a. Caso o desenvolvedor queira utilizar todo o recurso de gerenciamento do Expo CLI, a opção é o Manage Workflow. Respostas: a. Caso o desenvolvedor queira utilizar todo o recurso de gerenciamento do Expo CLI, a opção é o Manage Workflow. b. Caso o desenvolvedor queira todo o controle de desenvolvimento, mas não tenha o xCode e Android Studio instalado, a opção é o Manage Workflow. c. Caso o desenvolvedor queira todo o controle de desenvolvimento e tenha o xCode e Android Studio instalado, a opção é o Manage Workflow. d. Caso o desenvolver queira utilizar todo o recurso de gerenciamento do Expo CLI, a opção é o Bare Workflow. e. Caso o desenvolver queira utilizar todo o recurso de gerenciamento do React Native CLI, a opção é o Manage Workflow. Comentário da resposta: Resposta correta: a) Caso o desenvolvedor queira utilizar todo o recurso de gerenciamento do Expo CLI, a opção é o Manage Workflow. O Manage workflow utiliza o Expo CLI que realiza o gerenciamento de toda a complexidade de criar aplicativos. · Pergunta 4 1 em 1 pontos Caso seja necessário você criar um objeto simples que possua 15 propriedades e uma dessas propriedades seja iniciada com um outro objeto, qual seria a melhor forma de declarar essa informação? Resposta Selecionada: d. Criar um objeto linear com as informações iniciais dessas propriedades cujo conteúdo será inserido diretamente em uma variável. Respostas: a. Criar uma classe em um arquivo separado que será inicializada utilizando o operador new. b. Criar uma classe dentro do próprio arquivo que será inicializada utilizando o operador new. c. Criar um objeto linear em um arquivo separado com as informações iniciais e iniciar esse objeto com o operador new. d. Criar um objeto linear com as informações iniciais dessas propriedades cujo conteúdo será inserido diretamente em uma variável. e. Criar um objeto linear com as informações iniciais e iniciar esse objeto com o operador new. Comentário da resposta: Resposta correta: d) Criar um objeto linear com as informações iniciais dessas propriedades cujo conteúdo será inserido diretamente em uma variável. Apesar do número grande de propriedades, como esse objeto não possui métodos, o ideal é utilizar a declaração de objeto linear. E objetos lineares são inseridos diretamente em uma variável. · Pergunta 5 1 em 1 pontos Ao desenvolver um aplicativo que irá mostrar todo o catálogo de produtos de uma empresa em 3-D e será necessário realizar uma animação desses produtos, qual é o melhor tipo de linguagem a ser escolhida? Resposta Selecionada: b. A linguagem nativa pela sua performance em aplicativo pesados. Respostas: a. A linguagem Hybrid-WEB pela sua facilidade de desenvolvimento. b. A linguagem nativa pela sua performance em aplicativo pesados. c. A linguagem Hybrid-Native por ter um único código para diversas plataformas. d. A linguagem Hybrid-WEB pela sua performance. e. A linguagem Hybrid-Native apesar de ter um código para cada ambiente. Comentário da resposta: Reposta correta: b) A linguagem nativa pela sua performance em aplicativo pesados. Como o aplicativo vai exigir uma grande performance para rodar o conteúdo e animações 3-D, o mais indicado nesses casos é utilizar o aplicativo nativo.· Pergunta 6 1 em 1 pontos O React-Redux possui alguns componentes que ajudam no compartilhamento de estados. Analisando o código abaixo, qual a melhor explicação para o ponto 1 e para o ponto 2 do código: const loginLoading = useSelector((state) => state.auth.loginLoading); //Ponto 1 const dispatch = useDispatch(); dispatch(login(loginInfo, passInfo)); //Ponto 2 Resposta Selecionada: b. Ponto 1: coleta a informação e monitora mudanças da variável loginLoading no módulo auth. Ponto 2: chama a action login, passando por parâmetros o logInfo e passInfo. Respostas: a. Ponto 1: coleta a informação da variável loginLoading no módulo auth Ponto 2: chama a action login, passando por parâmetros o logInfo e passInfo. b. Ponto 1: coleta a informação e monitora mudanças da variável loginLoading no módulo auth. Ponto 2: chama a action login, passando por parâmetros o logInfo e passInfo. c. Ponto 1: coleta a informação e monitora mudanças da variável loginLoading no módulo auth. Ponto 2: chama a função login, passando por parâmetros o logInfo e passInfo. d. Ponto 1: coleta a informação da variável loginLoading no módulo auth Ponto 2: chama a função login, passando por parâmetros o logInfo e passInfo. e. Ponto 1: coleta a informação da variável loginLoading no módulo auth Ponto 2: cancela a chamada da função login, clicada anteriormente. Comentário da resposta: Resposta correta: b) Ponto 1: coleta a informação e monitora mudanças da variável loginLoading no módulo auth. Ponto 2: chama a action login, passando por parâmetros o logInfo e passInfo. O useSelect recebe a infomação inicial e monitora caso ocorra alguma mudança da variável no reducer. Já o dispatch é utilizado para realizar chamados das actions no Redux. · Pergunta 7 1 em 1 pontos Uma das grandes diferenças do React para as outras linguagens são os states. Utilizados em diversas áreas do código, quais as suas principais funções? Resposta Selecionada: c. Armazenar uma informação durante todo ciclo de vida do componente e realizar uma nova renderização quando seu valor é alterado. Respostas: a. Receber aviso sobre as mudanças dos valores de uma determinada variável. b. Armazenar uma informação durante todo ciclo de vida do componente, mas não renderiza a tela quando seu valor é alterado. c. Armazenar uma informação durante todo ciclo de vida do componente e realizar uma nova renderização quando seu valor é alterado. d. Armazena a instância de um objeto para enviar a outro componente. e. Armazena as informações somente enquanto o componente realiza a renderização. Comentário da resposta: Resposta correta: c) Armazenar uma informação durante todo ciclo de vida do componente e realizar uma nova renderização quando seu valor é alterado. Os states armazenam as informações durante o ciclo de vida de um componente e força uma nova renderização caso o seu valor seja alterado. · Pergunta 8 1 em 1 pontos Analisando o código a seguir, temos uma classe em Javascript com algumas propriedades privadas e outras públicas. Qual será o resultado obtido no console do debug utilizando o comando console.log? Resposta Selecionada: e. O aplicativo rodará sem nenhum erro e serão exibidos no console os valores 1 e undefined, porque a propriedade fechar é privada. Respostas: a. O aplicativo rodará sem nenhum erro e serão exibidos no console os valores 1 e 0. b. O aplicativo apresentará erro porque o caractere # não é reconhecido pelo Javascript. c. O aplicativo apresentará erro porque faltou o caractere # na propriedade abrir. d. O aplicativo rodará sem nenhum erro e serão exibidos no console os valores undefined e 0, porque a propriedade abrir é privada. e. O aplicativo rodará sem nenhum erro e serão exibidos no console os valores 1 e undefined, porque a propriedade fechar é privada. Comentário da resposta: Resposta correta: e) O aplicativo rodará sem nenhum erro e serão exibidos no console os valores 1 e undefined, porque a propriedade fechar é privada. O caractere # informa que a propriedade fechar é privada e, por isso, ao tentar acessar a informação, será exibido no console o valor undefined. · Pergunta 9 1 em 1 pontos O React Navigation permite que uma tela possa compartilhar informações de um componente original para o componente que será inicializado. Com base nessa funcionalidade, quais dos códigos abaixo é a maneira correta de realizar essa troca de informação? Resposta Selecionada: c. navigation.navigate('Screen2', {info: 2}). Respostas: a. navigation.open('Screen2', {info: 2}). b. navigation.open(<Screen2 info=2 />). c. navigation.navigate('Screen2', {info: 2}). d. navigation.navigate(<Screen2 info=2 />). e. navigation.open(['Screen2', info: 2]). Comentário da resposta: Resposta correta: c) navigation.navigate('Screen2', {info: 2}). O comando para navegar entre as telas é o navigate e os parâmetros desse componente são nome da tela de acordo com o declarado no React Navigation e o objeto com as informações a serem passadas. · Pergunta 10 1 em 1 pontos O Redux-Saga é muito utilizado para gerenciar o controle das conexões com APIs e banco de dados internos e compartilhar a informação com os componentes. Analisando o código abaixo, qual a melhor explicação para os pontos 1, 2 e 3. //Ponto 1 const address = yield select(state => state.address.address); //Ponto 2 yield put(loginStart()); //Ponto 3 const dataReturn = yield call(FakerServices.get, 'persons?_quantity=1'); Resposta Selecionada: e. Ponto 1: busca a informação da variável address no reducer do módulo address; Ponto 2: chama a action loginStart e aguarda a execução; Ponto 3: realiza a chamada do FakerServices e, ao terminar a conexão, retorna os dados da API. Respostas: a. Ponto 1: monitora a informação da variável address no reducer do módulo address; Ponto 2: chama a função loginStart declarada nesse componente; Ponto 3: realiza a chamada do FakerServices e, ao terminar a conexão, retorna os dados da API. b. Ponto 1: monitora a informação da variável address no reducer do módulo address; Ponto 2: chama a função loginStart declarada nesse componente; Ponto 3: realiza a chamada do FakerServices e, ao terminar a conexão, retorna o http code da conexão. c. Ponto 1: busca a informação da variável address no reducer do módulo address; Ponto 2: chama a função loginStart declarada nesse componente; Ponto 3: realiza a chamada do FakerServices e, ao terminar a conexão, retorna os dados da API. d. Ponto 1: busca a informação da variável address no reducer do módulo address; Ponto 2: chama a action loginStart e aguarda a execução; Ponto 3: realiza a chamada do FakerServices e, ao terminar a conexão, retorna o http code da conexão. e. Ponto 1: busca a informação da variável address no reducer do módulo address; Ponto 2: chama a action loginStart e aguarda a execução; Ponto 3: realiza a chamada do FakerServices e, ao terminar a conexão, retorna os dados da API. Comentário da resposta: Resposta correta: e) Ponto 1: busca a informação da variável address no reducer do módulo address; Ponto 2: chama a action loginStart e aguarda a execução; Ponto 3: realiza a chamada do FakerServices e, ao terminar a conexão, retorna os dados da API. O select é utilizado para buscar a informação no reducer, já o put é utilizado para chamar o action e o call realiza uma função e, após o término, retorna o andamento do componente, trazendo o retorno da API.
Compartilhar