Você está na página 1de 10

Pergunta 1 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


resposta: classe 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 2 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


resposta: 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 3 1 em 1 pontos

O React permite que o desenvolvedor consiga acesso a posição geográfica


do usuário após solicitar a permissão dele para isso. Dessa maneira, qual é
a melhor explicação para o seguinte código a seguir:

Location.watchPositionAsync(
{ timeInterval: 100, distanceInterval: 100 },
(location) => {
console.log(location)
setPosition(location);
}
);

Resposta c.
Selecionada: O código inicializa o monitoramento da posição do usuário
e realiza o chamado da função desde que seja uma
distância menor de 100 quilômetros e o tempo seja no
máximo de 100 milissegundos da última notificação.

Respostas: a.
O código busca a posição do usuário e realiza o chamado
da função após obter a posição.

b.
O código inicializa o monitoramento da posição do usuário
e somente chama quando o usuário estiver a mais.

c.
O código inicializa o monitoramento da posição do usuário
e realiza o chamado da função desde que seja uma
distância menor de 100 quilômetros e o tempo seja no
máximo de 100 milissegundos da última notificação.

d.
O código inicializa o monitoramento da posição do usuário
e realiza o chamado da função desde que seja uma
distância maior de 100 metros e o tempo maior de 100
milissegundos da última notificação.

e.
O código inicializa o monitoramento da posição do usuário
e realiza o chamado da função desde que seja uma
distância maior de 100 metros e o tempo maior de 100
milissegundos da última notificação.

Comentário Reposta correta: c) O código inicializa o monitoramento da


da resposta: posição do usuário e realiza o chamado da função desde
que seja uma distância menor de 100 quilômetros e o
tempo seja no máximo de 100 milissegundos da última
notificaçã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 4 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 Resposta correta: c) navigation.navigate('Screen2', {info:


da resposta: 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 5 1 em 1 pontos

Ao desenvolver um aplicativo MVP, mas que seja necessário rodar nos


sistemas operacionais Android e iOS, qual o melhor tipo de linguagem?

Resposta
d. React Native com o Expo CLI.
Selecionada:

Respostas:
a. Linguagem Nativa utilizando o Swift e o Kotlin.

b. Linguagem Nativa utilizando o Javascript.

c. React Native com o React Native CLI.

d. React Native com o Expo CLI.

e.
Linguagem Nativa utilizando o Java e o Objective-C.

Comentário da Resposta correta: d) React Native com o Expo CLI.


resposta: Como é uma aplicação simples e deve ser realizada no
menor tempo possível, o ideal é você utilizar o Expo CLI.
Pergunta 6 1 em 1 pontos

Ao desenvolvermos dois componentes, utilizamos as props para realizar a


transmissão de informação entre um componente e o outro. Analisando o
código a seguir, responda: Qual seria a informação que estará no Console?

const InitialScreen = () => {


let info = "1234"
return (
<App info={"5678"}/>
);
}

const App = (props) => {


console.log("Info = " + props.info)
return <View>
<Text>{props.info}</Text>
</View>
}

Resposta
b. Info = 5678
Selecionada:

Respostas:
a. Info = 1234

b. Info = 5678

c. Null

d.
Mostraria erro pois na função App o parâmetro deveria
ser info e não props

e.
Mostraria erro pois a info não é uma propriedade do
objeto props

Comentário da Resposta correta: b) Info = 5678. Mesmo declarado uma


resposta: variável com o nome info, o que importa é o que está
sendo passado no junto a declaração de elemento o que,
no caso, é o valor 5678.

Pergunta 7 1 em 1 pontos

Você precisa desenvolver um aplicativo com menu lateral com dois itens e,
dentro desses itens, teremos algumas telas que abrirão de acordo com a
informação que você tocará. Para isso, utilizaremos quais componentes?
Resposta e.
Selecionada: Para realizar essa navegação de telas, usaremos o
componente Drawer para organizar os menus e, dentro
deles, criaremos funções com os componentes Stacks para
fazer a pilha de telas.

Respostas: a.
Para realizar essa navegação de conjunto de telas,
usaremos o componente Menu para organizar os menus e,
dentro deles, criaremos funções com os componentes
Stacks para fazer a pilha de telas.

b.
Para realizar essa navegação de telas, usaremos o
componente Drawer para organizar os menus e, dentro
deles, criaremos funções com os componentes Screens
para fazer a pilha de telas.

c.
Para realizar essa navegação de telas, usaremos o
componente Menu para organizar os menus e, dentro
deles, criaremos funções com os componentes Screens
para fazer a pilha de telas.

d.
Para realizar essa navegação de telas, usaremos o
componente Screens para organizar os menus e, dentro
deles, criaremos funções com os componentes Stacks para
fazer a pilha de telas.

e.
Para realizar essa navegação de telas, usaremos o
componente Drawer para organizar os menus e, dentro
deles, criaremos funções com os componentes Stacks para
fazer a pilha de telas.

Comentário Resposta correta: e) Para realizar essa navegação de


da resposta: telas, usaremos o componente Drawer para organizar os
menus e, dentro deles, criaremos funções com os
componentes Stacks para fazer a pilha de telas.
O componente Drawer que organiza a separação entre
conjunto de telas que é como funciona o menu e, dentro
dele, declaramos as Stacks.

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 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
resposta: 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-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 10 1 em 1 pontos

Utilizamos o PropTypes para realizar uma checagem se todas as


propriedades de um componente foram enviadas de acordo com a sua
declaração. Caso declaremos o seguinte PropTypes abaixo, qual das
chamadas não apresentaria erro:

TestComponent.PropTypes = {
name: PropTypes.string.isRequired,
cpf: PropTypes.number.isRequired,
email: PropTypes.string.isRequired,
isOpen: PropTypes.bool.isRequired,
info: PropTypes.any.isRequired
};

Resposta d.
Selecionada: <TestComponent name="Info" cpf=123465 email="1234"
isOpen=true info=123 info2="a@a.com" />.

Respostas: a.
<TestComponent name="Info" cpf=123465 email=1234
isOpen=true info="teste" />.

b.
<TestComponent name="Info" cpf="123465"
email="1234" isOpen=1 info="teste" />.

c.
<TestComponent name="Info" cpf="123465"
email="a@a.com" isOpen=true info="teste" />.
d.
<TestComponent name="Info" cpf=123465 email="1234"
isOpen=true info=123 info2="a@a.com" />.

e.
<TestComponent name="Info" cpf="123465"
email="a@a.com" isOpen=1 info="teste" />.

Comentário da Resposta correta: d) <TestComponent name="Info"


resposta: cpf=123465 email="1234" isOpen=true info=123
info2="a@a.com" />.

Apesar de passar uma informação a mais, o que não


acarreta erro, e o e-mail ser String sem o formato padrão,
todos os props estão de acordo com os
PropTypesdeclarados.

Você também pode gostar