Você está na página 1de 10

• 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 c.
Selecionada:
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 Reposta correta: c) O aplicativo, no primeiro componente, deve chamar
da resposta:
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

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 b.
Selecionada:
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 correta: b)
resposta:
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 3
1 em 1 pontos

Ao desenvolver um sistema de controle de RH, precisamos criar um método de cálculo


de bonificação de funcionários. Qual seria a melhor forma de desenvolver esse
método?

Resposta b.
Selecionada:
Criamos uma nova classe chamada Funcionário, colocamos esse
método nessa classe e as classes Gerente,
Secretaria e Vendedor herdam a classe Funcionário.
Respostas: a.
Criamos esse método nas classes Gerente, Secretária e Vendedor.
b.
Criamos uma nova classe chamada Funcionário, colocamos esse
método nessa classe e as classes Gerente,
Secretaria e Vendedor herdam a classe Funcionário.
c.
Implementamos o método na classe Secretaria e as
classes Gerente e Vendedor herdam a classe Secretaria.
d.
Criamos uma nova classe chamada Funcionário, colocamos esse
método nessa classe e a classe Funcionário herda as
classes Gerente, Secretaria e Vendedor.
e.
Implementamos o método na classe Gerente e as classes Secretaria e
Vendedor herdam a classe Gerente.
Comentário da Resposta correta: b) Criamos uma nova classe chamada Funcionário,
resposta:
colocamos esse método nessa classe e as classes Gerente, Secretaria
e Vendedor herdam a classe Funcionário.
O ideal é criar uma nova classe com o método desejado e que essa
classe tenha informações comuns a todas as outras classes que a
herdem. No nosso caso, Gerente, Secretaria e Vendedor são todos
Funcionários da empresa.
• Pergunta 4
1 em 1 pontos

Ao desenvolver uma tela de visualização de notícias, precisamos colocar um


componente text com o título da notícia no topo do componente e abaixo outro
componente text para colocar o texto da notícia. Nesse caso, qual o valor que
precisamos colocar no FlexDirection?

Resposta a.
Selecionada:
Usaremos o column para organizar os componentes na vertical.
Respostas: a.
Usaremos o column para organizar os componentes na vertical.
b.
Usaremos o column-reverse para organizar os componentes na
vertical, mas na ordem inversa.
c.
Usaremos o row-reverse para organizar o componente na horizontal
.
d.
Usaremos o column-reverse para organizar os componentes na
vertical.
e.
Usaremos o row para organizar o componente na vertical.
Comentário da Reposta correta: a) Usaremos o column para organizar os
resposta:
componentes na vertical.
O Flexbox utiliza o valor Column no Flex Direction para organizar os
itens na vertical de cima para baixo.
• Pergunta 5
1 em 1 pontos

O React-Native-Maps é uma biblioteca interessante que permite que o desenvolvedor


consiga inserir um mapa no seu aplicativo. Usando essa biblioteca, qual é a função
para os componentes MapView, Marker e Circle:

Resposta d.
Selecionada:
O MapView exibe um mapa no espaço determinada pelos styles, o
Marker posiciona um marcador na tela e o Circle circula o marcador
com uma cor.
Respostas: a.
O MapView exibe um mapa na tela inteira, o Marker marca a posição
inicial do mapa e o circle circula o mapa com uma cor.
b.
O MapView exibe um mapa no espaço determinada pelos styles, o
Marker marca a posição inicial do mapa e o Circle circula o marcador
com uma cor.
c.
O MapView exibe um mapa na tela inteira, o Marker marca a posição
inicial do mapa e o Circle circula o mapa com uma cor.
d.
O MapView exibe um mapa no espaço determinada pelos styles, o
Marker posiciona um marcador na tela e o Circle circula o marcador
com uma cor.
e.
O MapView exibe um mapa na tela inteira, o Marker posiciona um
marcador na tela e o Circle circula o marcador com uma cor.
Comentário da Resposta correta: d) O MapView exibe um mapa no espaço
resposta:
determinada pelos styles, o Marker posiciona um marcador na tela e o
Circle circula o marcador com uma cor.
O Mapview inseri um mapa na tela, sempre respeitando o espaço
estipulado pelo style. Já o Marker e o Circle, trabalham em conjunto
dentro do MapView, inserindo um marcador em um determinado ponto
do mapa, circulado por uma cor especificada.
• Pergunta 6
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 c.
Selecionada:
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 correta: c) Armazenar uma informação durante todo ciclo
resposta:
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 7
1 em 1 pontos

Ao desenvolver um sistema de vendas, a classe Produto possui um método chamado


calculaImposto que calcula o imposto dos produtos que serão vendidos. Essa classe é
herdada pelas classes Lapis, Borracha e Caneta. Porém, devido a uma mudança nas
regras de negócio, o imposto exercido sobre o produto lápis será 10% maior em relação
aos outros produtos.
Qual é a melhor solução para esse caso?

Resposta b.
Selecionada:
Herdar o método calculaImposto da classe Produto na classe Lapis.
Esse método irá chamar o método calculaImposto da classe pai e
adicionar o valor excedente.
Respostas: a.
Remover o método da classe Produto e colocar o método
calculaImposto em todas as classes.
b.
Herdar o método calculaImposto da classe Produto na classe Lapis.
Esse método irá chamar o método calculaImposto da classe pai e
adicionar o valor excedente.
c.
Alterar a nova tarifa no método calculaImposto na classe Produto e
implementar um novo método chamado impostoAntigo nas classes
Borracha e Caneta para calcular o imposto antigo.
d.
Criar um novo método na classe Lapis chamado novoImposto que irá
calcular o novo valor de imposto.
e.
Criar um novo método na classe Caneta chamado calculaImposto que
irá chamar o método calculaImposto da classe pai e adicionar o valor
excedente.
Comentário da Resposta correta: b) Herdar o método calculaImposto da classe
resposta:
Produto na classe Lapis. Esse método irá chamar o método
calculaImposto da classe pai e adicionar o valor excedente.
O ideal nesse caso é herdar o método calculaImposto da classe
Caneta na classe Lápis, buscar a informação calculada na classe pai e
aplicar o valor adicional dentro desse método.

• Pergunta 8
1 em 1 pontos

Uma das grandes vantagens em desenvolver em React Native é a ferramenta Fast


Refresh. Qual é a função dessa ferramenta?

Resposta c.
Selecionada:
Permite que o código seja atualizado diretamente na tela do celular,
sem a necessidade de recompilação.
Respostas: a.
Permite que o código não precise ser compilado para ser executado
no celular.
b.
Acelera o tempo de compilação em até 10x do que o código nativo.
c.
Permite que o código seja atualizado diretamente na tela do celular,
sem a necessidade de recompilação.
d.
Permite que a atualização de uma tela para outras seja mais rápido.
e.
Permite alterar o código diretamente na ferramenta de debug.
Comentário da Reposta correta: c) Permite que o código seja atualizado diretamente
resposta:
na tela do celular, sem a necessidade de recompilação.
O Fast Refresh permite que o código seja atualizado
automaticamente ao salvar o arquivo, sem que seja necessário
refazer toda compilação novamente.
• Pergunta 9
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 e.
Selecionada:
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 correta: e)
resposta:
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.
• Pergunta 10
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 e.
Selecionada:
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 correta: e) O aplicativo rodará sem nenhum erro e serão
resposta:
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.

Você também pode gostar