Baixe o app para aproveitar ainda mais
Prévia do material em texto
Exercícios UNIT 1 1- Antes da proposta da linguagem de marcação HTML por Tim Berners-Lee, outros sistemas de publicação de conteúdo voltados para tipos específicos de computadores (PCs, Macintoshes, UNIX, etc.) já existiam. Assinale a alternativa que justifica corretamente a adoção ou rejeição desses sistemas como substitutos viáveis do HTML. Rejeição. Como os sistemas disponíveis eram voltados para tipos específicos de computadores, seria inviável preparar versões desses sistemas para todos os demais tipos de computadores conectados à Internet. 2- Até que a padronização do HTML fosse definida pelo órgão internacional W3C, muitos recursos proprietários foram incorporados à linguagem, especialmente antes da sua versão 3.2. Marque a alternativa que aponta um dos problemas gerados por essas alterações. Marcações proprietárias eram interpretadas apenas por certos navegadores, de modo que sua exibição nos demais navegadores ficava comprometida. 3- A essência do HTML está na sua capacidade de estruturar documentos eletrônicos e em permitir que um documento possa ser acessado a partir de outro. Assinale a alternativa que apresenta um avanço tecnológico que impulsionou o recurso de hipertextos do HTML entre documentos presentes em computadores distintos. A criação de um sistema de nomes de domínio que facilitou o endereçamento de computadores em diversas partes do mundo 4- Linguagens de marcação têm sua origem em anotações feitas em documentos manuscritos. A versão eletrônica dessas marcações também oferece vantagens para a interpretação de informações. Assinale a alternativa que apresenta a função das linguagens de marcação em documentos eletrônicos. Especificam como algum elemento deve ser exibido e, alternativamente, a semântica ou o significado desse elemento. 5- O padrão definido pelo W3C para o HTML possibilita que quaisquer navegadores possam renderizar um documento HTML da mesma forma. Suponha que uma nova tag <sagah/> tenha sido sugerida pela empresa Sagah para compor uma nova versão do HTML. Indique a alternativa que melhor explica o impacto que essa nova tag causaria se fosse aceita pelo W3C. Todos os navegadores deveriam ser adaptados para conseguir interpretar essa nova tag cujo significado é restrito a apenas um público específico. 6- Sobre a instrução < !DOCTYPE html > do HTML5, marque a alternativa correta: Indica que o documento hipertexto foi escrito na versão 5 do HTML 7- Indique a alternativa correta em relação ao elemento < section > do HTML5: Representa uma ou mais áreas de uma página HTML5. 8- Selecione a alternativa correta em relação à formatação de parágrafos com a tag < pre > em HTML5: Exibe o texto formatado tal como foi digitado no código-fonte. 9- Marque a alternativa correta sobre âncoras em HTML5: Realizam o direcionamento para um ponto da mesma página web. 10- Em relação às listas do HTML5, selecione a alternativa correta: Uma lista pode ser aninhada com outras sublistas, inclusive com tipos diferentes de lista. 11- Em relação à formulários web, marque a alternativa correta: Em relação à formulários web, marque a alternativa correta: 12 - A interação entre o navegador do usuário e o servidor web, por meio de um formulário HTML, é realizada por operações denominadas, respectivamente, por: solicitação e resposta 13- Selecione a opção que especifica o método de envio de dados de um formulário HTML, cujos valores são passados de forma aberta, podendo ser vistos pelo usuário da aplicação: Get. 14- Marque a alternativa que indica um campo de formulário invisível do elemento "input", ou seja, que existe no formulário HTML, mas que não é visível para o usuário da página web. Hidden. 15- Indique a alternativa que apresenta corretamente a máscara para validação de formato número de CPF com HTML5: 16- Indique a opção que representa a maneira correta de chamar um arquivo externo CSS em uma página HTML: 17- Marque a opção que indica a alternativa correta em relação às propriedades de uma caixa em CSS3: Content, padding, border e margin. 18- Em relação aos seletores de classe, marque a alternativa correta: Pode-se aplicar mais de um estilo de seletor de classe para um elemento HTML. 19- Indique a alternativa correta em relação ao seletor de Id: Pode ser usado apenas uma única vez dentro de uma página HTML. 20- São operadores lógicos suportados por Media Feature: Only, and, not e or. UNIT 2 21- Existem vários métodos de manipulação dos elementos da página Web que podem ser utilizados pelo desenvolvedor para adicionar comportamento aos sistemas ou a páginas Web. Marque a opção referente ao método que obtém um elemento a partir de seu identificador: getElementById(). 22- Se o desenvolvedor precisar mudar a cor de um texto no momento em que o usuário clicar no botão, é possível acessar os elementos da árvore DOM para realizar tal manipulação no nó em questão. Marque a opção que representa a forma de obter o elemento e definir a cor azul ao texto: document.getElementById(‘idTituloPagina’).style.color = ‘blue’. 23- O DOM é uma interface de programação para documentos HTML que fornece uma representação do documento da página Web na forma de árvore. Marque a opção que representa os elementos filhos do nó window: Location, document e history. 24 - Criadas as páginas Web com uma estrutura HTML adequada e com estilização, o desenvolvedor pode adicionar filtros de pesquisa para apresentação de dados selecionados, validação de formulários, entre outros comportamentos dinâmicos e interativos. Marque a opção que representa a linguagem de script que permite a manipulação dos elementos do documento da página Web: JavaScript 25 - O DOM é a estrutura e o conteúdo de um documento Web, que são representados por dados dos objetos e um documento nas linguagens de marcação HTML e XML na memória do computador, para que sejam apresentados nos navegadores. Marque a opção que representa os dois padrões que podem ser implementados na maioria dos navegadores mais recentes: W3C e WHATWG. 26- Podemos dividir uma ação feita com o JavaScript em dois elementos básicos. Quais são? Função e evento. 27- São exemplos de eventos do JavaScript: OnClick, OnSubmit e OnLoad. 28- São métodos de JavaScript bastante utilizados: Alert(), Confirm() e Prompt(). 29- Qual a sintaxe correta de um código JavaScript? 30- Qual a função de uma VARIÁVEL no JavaScript? Ter um valor que varia ou que pode ser inserido pelo usuário. 31- Os objetos nativos estão presentes diretamente na linguagem JS, oferecendo funções e constantes de grande utilidade para o programador. A respeito desses objetos, assinale a alternativa verdadeira: Servem de base para os demais objetos do código. 32- Nem todos os objetos nativos apresentam construtores ou propriedades acessíveis. Qual das alternativas a seguir representa um código válido na manipulação de objetos nativos? new Date(86400) 33- Um aplicativo é utilizado para calcular a quantidade de telhas necessárias para cobrir um telhado a partir dos dados de largura (L) e comprimento (C) da área a ser coberta, o grau de inclinação (I) recomendado para a telha e a quantidade de telhas por m² (T). A quantidade de telhas pode ser determinada pela fórmula: const quantidade = (Math.sqrt(Mat.pow(C, 2) + Math.pow(I*C, 2))*L)/T Todos os métodos e funções utilizam parênteses para delimitar a passagem de parâmetros, não sendo válidos { } nem [ ]. Exponenciações só são possíveis por meio da função Math.pow(x, y), cujo primeiro parâmetro corresponde à base, e o segundo, ao expoente. O "." em JavaScript serve para acessar as propriedades e os métodos de um objeto, e as multiplicações são feitas pelo operador "*". Não existe um método de divisão no objeto Math, mas um operador próprio para isso: "/". São necessários os recursos de raiz quadrada (Math.sqrt()) e exponenciação (Math.pow) para executar a operação, seguindo a mesma ordem em que aparecem: primeiro a soma das exponenciações, depois a raiz, a multiplicação e, por fim, a divisão.34- Um site deve fazer a simulação de um investimento e, para tanto, precisa calcular a quantidade de dias entre as datas de aplicação e resgate. Assinale a alternativa que permite obter, a partir de dois objetos Date, data1 e data2, a quantidade de dias entre eles. (data1.getTime() - data2.getTime())/86400000 Não se pode subtrair objetos, tampouco o objeto nativo Date apresenta um método chamado Subtract. getDate() retorna apenas o dia do mês e não poderá ser usada na subtração entre meses diferentes. O método getTime() retorna o tempo em milissegundos de ambas as datas, e, como cada dia tem 86.400.000 milissegundos, pode-se descobrir a diferença entre datas em milissegundos e dividir por esse valor para se obter a quantidade de dias. 35 - O encadeamento de protótipos é a base para o mecanismo de herança em JavaScript, sendo a maioria dos objetos herdeiros em algum nível do objeto Object.prototype. Qual dos objetos a seguir tem um objeto nulo como herdeiro? obj = {}.__proto__ {}.__proto__ é o próprio Object.prototype e este não tem ancestral, quando usado como atribuição direta não terá ancestral. Quando usado como parâmetro para Object.create será o mesmo que Object.create(Object.prototype). Object.create(Object.prototype) cria um objeto herdeiro direto de Object.prototype. Object.create({}) cria um objeto herdeiro de outro objeto vazio que, por sua vez, é herdeiro de Object.prototype. {} cria um objeto vazio que é herdeiro de Object.prototype. 36 - Object.prototype é o principal objeto na herança de protótipos implementada pelo JavaScript. Com a exceção de alguns poucos objetos, como o null, por exemplo, a maioria dos demais objetos herda um protótipo, sendo o primeiro deles o Object.prototype. Isso garante que todos os objetos tenham propriedades e métodos mínimos necessários para o desenvolvimento do código. Qual dos métodos a seguir faz parte do Object.prototype? toLocaleString Object.prototype tem um método denominado propertyIsEnumerable e não apenas isEnumerable. getValue inexiste no protótipo, tendo um similar de nome valueOf. create é um método estático do objeto Object, e não do protótipo. length é uma propriedade do protótipo, e não um método. toLocaleString é um método que por padrão invoca o método toString e pode ser sobrescrito pelos herdeiros para permitir customizações da exibição textual de um objeto. 37- O aplicativo a seguir define um objeto principal e dois herdeiros. Determine qual das soluções a seguir permite que cada um dos herdeiros implemente seu próprio método Reiniciar(): var maquina = { id: 0, Reiniciar() } var computador = { __proto__: maquina, idiomaTeclado: 'PT-BR' } var tablet = { __proto__: maquina, sensibildadeTouch: 0.7} computador.Reiniciar = () => // expressão tablet.Reiniciar = () => // expressão UNIT 3 38- O que é DOM? Document Object Model, é a estrutura das marcações HTML no navegador. 39- O que significa JSON? JavaScript Object Notation. Um modelo simples e leve para troca de dados. 40- O que é uma requisição assíncrona? Que não bloqueia o navegador para a atualização dos dados. Essa é a principal característica de uma requisição assíncrona. 41- Qual a principal classe de javascript para trabalho com Ajax? XMLHttpRequest Essa é a principal classe de javascript para trabalho com Ajax. 42- Qual a principal função do Ajax? Enviar e receber dados de forma assíncrona. 43- Existe a necessidade de esconder todos os elementos que contêm a classe "novo" no código. Utilizando os recursos de jQuery, o comando correto para executar essa instrução seria: $(".novo").hide() O comando em jQuery utilizado para esconder uma classe é por meio da função hide. Para identificar que o selector deve selecionar uma classe específica, basta começar a declaração pelo "ponto", seguido do nome da classe, e, então, logo após a função hide. Sendo assim, a opção correta seria $(".novo").hide(). No entanto, usar o comando "=" nome da classe ou somente o nome da classe mais o ponto e a função hide não são reconhecidos pelo jQuery. 44- Alguns cuidados são importantes para garantir o funcionamento da biblioteca jQuery. Um dos cuidados está relacionado ao fato de somente executar após carregar. Quanto a isso, uma solução que poderia auxiliar seria: Criar uma função $ que recebe uma função anônima como argumento. Uma forma de garantir que o jQuery seja executado somente após carregamento da página seria criando uma função $ que recebe como parâmetro uma função que executa os elementos da página. Salvar a biblioteca jQuery junto ao arquivo html não resolve esse problema, é apenas uma padronização. Manter a versão atualizada constantemente está relacionado a garantir compatibilidade. Executar a tag <script> antes de todas evita problemas de importação, e implementar mecanismos de refresh na tela ao contrário pode causar problemas na execução. 45 - Muitas vezes, problemas na utilização do jQuery estão relacionados à instalação da biblioteca ou referência no arquivo HTML. Analise o código HTML a seguir e assinale a alternativa correta acerca da instalação da biblioteca: O arquivo js está localizado em um diretório chamado js e deve ser renomeado para biblioteca. Analisando o código HTML, para funcionar, o arquivo js deve ser renomeado para biblioteca e ficar em um diretório chamado js. Pelo código apresentado, o arquivo HTML não está localizado no mesmo diretório js e não existe necessidade de ser renomeado para biblioteca para funcionar com o arquivo js. Biblioteca deve ser somente o nome do arquivo js. 46 - Os selectors são recursos fundamentais do jQuery. Entender e conhecer a forma como pode-se referenciar e selecionar recursos da DOM HTML é pilar para trabalhar com jQuery. Analise o código a seguir e assinale a alternativa correta quanto ao seu tipo de selector: $("#test").hide(); Seleciona um único elemento que corresponde ao ID fornecido. O tipo de selector indicado com a # é o que seleciona um único elemento que corresponde ao ID fornecido. Para selecionar uma classe especificada, é usado o selector ponto-final, seguido do nome da classe; para todos os elementos da DOM, é usado o selector universal; para resultados combinados, é usado o selector Multiple Elements e, para elementos que contêm uma determinada substring, é usado o selector [name*=”value”]. 47- jQuery é uma biblioteca pequena que tem uma grande adoção em páginas web por permitir que essas adotem comportamentos dinâmicos e se adaptem facilmente a algumas tecnologias. Assinale a alternativa correta quanto algumas das características da jQuery: Tem compatibilidade e possibilita a instalação de plug-ins e extensões. Uma das grandes vantagens da adoção do jQuery em projetos é a sua compatibilidade e possibilidade de instalação de novos plug-ins e extensões. Apesar de várias vantagens, outra das principais desvantagens de jQuery é quanto à performance, conhecer jQuery não substitui a necessidade de conhecer e entender JavaScript, até porque essa é uma biblioteca da linguagem. jQuery, desde o seu lançamento, tem suporte ao padrão CSS3 e contém uma sintaxe bem mais simplificada que a JavaScript, sendo assim, bem menos verbosa. 48- O Ajax é a arte de trocar dados com um servidor para atualizar partes de uma página Web sem precisar recarregá-la inteiramente. Sobre as opções para configurar as solicitações do Ajax, assinale a alternativa correta: A opção async parametriza se as solicitações são enviadas de forma assíncrona ou síncrona 49- O jQuery torna o Ajax muito mais simples. O Ajax funciona de forma assíncrona com o código, isto é, o código escrito com o Ajax pode se comunicar com o servidor e atualizar seu conteúdo sem precisar recarregar a página. Quais das alternativas refere-se a uma característica do jQuery? O jQuery simplifica consideravelmente as tarefas comuns de JavaScript, como criar facilmente páginas da Web interativas e ricas em recursos com menos linhas de códigos. 50 - Na biblioteca jQuery, uma das funções mais utilizadas é a $.ajax(), que, com uma sintaxe muito simples,permite enviar e tratar o resultado de requisições assíncronas. Qual das sintaxes a seguir está correta para declarar uma função Ajax? $.ajax(url,[options]); 51- Durante o desenvolvimento de sites e sistemas Web em geral, é comum a necessidade de consumir recursos do servidor sem que a página precise ser carregada novamente. Para atender esse tipo de situação, pode-se utilizar o conceito de Ajax com bibliotecas, como o jQuery, para tornar o trabalho com Ajax muito simples. A respeito do tipo de requisições possíveis de serem realizadas com Ajax e jQuery, pode-se afirmar que: é possível realizar requisições síncronas e assíncronas com o método jQuery.ajax. 52 - Os métodos Ajax () podem executar requisições HTTP assíncronas e obter os dados do servidor. Para realizar essas tarefas, existem funções específicas. Sobre essas funções, assinale a alternativa correta: A função GET serve para solicitar dados do servidor, e a função POST envia dados a serem processados para um servidor. 53- Para que seja possível desenvolver utilizando o React, é necessário configurar o ambiente de desenvolvimento na máquina em que serão criadas as aplicações. Marque a opção que diz respeito ao que deve ser instalado para que possa ser criada uma aplicação React. npm e Node.js 54- Quando o ambiente de desenvolvimento está configurado corretamente, é possível criar um projeto React por meio de um comando no terminal. Marque a opção referente ao comando de criação da aplicação React. npx create-react-app nomedaaplicacao. 55- Para que os componentes sejam apresentados na tela, eles precisam ser invocados por um método. Marque a opção do método que os componentes React implementam para gerar os dados que são apresentados na tela. render() 56 - Desenvolver aplicações tende a ser um processo facilitado à medida que as tecnologias evoluem. Marque a opção que representa a tecnologia que permite a escrita de elementos HTML dentro de trechos JavaScript. JSX 57- A biblioteca React apresenta uma série de características que a tornaram mais popular. Marque a opção referente à característica que torna o código das aplicações mais previsível e simples de ser depurado. . Declarativa. UNIT 4 58- Pressupondo que você precise desenvolver um componente que tenha o nome Exemplo em forma de função, que deve devolver uma tag < h1> com uma saudação inicial para o visitante de sua página, qual deve ser a estrutura utilizada para montar esse componente? function Exemplo() { return ( < h1 >Olá, seja bem-vindo ao nosso componente < /h1 > ); } 59 - Quando se deseja montar um componente usando a notação de classes JavaScript, deve-se seguir alguns requisitos de estrutura mínima. Nas alternativas a seguir, estão listadas algumas tentativas de montar um componente. Assinale aquela que cumpre tais requisitos na sua integralidade. Para um componente usando class estar completo, primeiro ele deve usar a notação class precedida do nome do componente com a primeira letra em maiúsculo. Em seguida, sua estrutura deverá, obrigatoriamente, ter um método render que tem uma função de retorno; dentro dessa função deve conter o elemento a ser retornando, que, obrigatoriamente, deve ter uma tag macro, por exemplo, uma tag <div> ou <h1> envolvendo todo o retorno. Portanto, a resposta correta é: class Exemplo{ render() { return ( <h1>Olá, seja bem-vindo ao nosso componente</h1> ); } } 60- As props são utilizadas para o envio de informações para os componentes por meio de parâmetros. Em um componente de função, elas devem ser recebidas no cabeçalho da função, por exemplo, function Exemplo(props). Pressupondo que se tem duas propriedades chamadas nome e texto, como elas devem ser utilizadas dentro do componente? props.nome e props.texto. As props devem seguir o padrão de sua criação, nesse caso, no cabeçalho da função, estarão escritas em letras minúsculas tanto a props quanto as suas propriedades nome e texto. Assim, para utilizá-las, deve-se sempre escrevê-las na notação props.nome, que é o padrão adotado pelo JavaScript e, consequentemente, pelo React. 61 - Para se criar o componente dentro do DOM do HTML e, consequentemente, fazê-lo aparecer na tela do usuário, deve-se renderizar os componentes. A renderização deve ser feita por meio da função ReactDOM.render(), que espera por parâmetro, sequencialmente: o componente e o elemento DOM do HTML. Para renderizar um componente, devem ser passados por parâmetros, primeiramente, o componente que será renderizado e, depois, o elemento HTML de referência em que o componente irá aparecer. Por exemplo: ReactDOM.render(<Exemplo />, document.getElementById('idTag')); 62- Você está desenvolvendo uma página de formulário que tem diversos TextBox. Dentro de seu componente de Formulario, ele deseja chamar um componente TextBox, que deve receber como props o seu tipo (type), o texto da label (label) e o seu nome (name). Diante disso, assinale a alternativa que apresenta a forma correta de fazer essa chamada. <TextBox type="text" label="Login" name="login" />. Os componentes do React usam por padrão as iniciais maiúsculas (como forma de diferenciar componentes de tags do HTML). Como o componente sugerido era TextBox, deve-se chamá-lo <TextBox />. As props type, label e name devem seguir a especificação nomedaprops=”valor”, ficando, portanto, a chamada correta do componente: <TextBox type="text" label="Login" name="login" /> 63- Para um desenvolvedor criar um aplicativo que interaja com o usuário, quando ele clicar em um botão, é necessário tratar os eventos do botão. Marque a opção que representa um evento de botão em um programa front end: onClick(). O evento de botão que captura o clique do mouse no botão é o onClick. Nenhuma das outras opções contém um evento válido. 64- Para programar eventos, é necessário conhecer as diferenças sutis existentes entre os eventos DOM e os eventos React, como a forma de escrever os eventos e seus manipuladores. Dado o seguinte trecho de código: <a href="#" onclick="alert('Link clicado!'); return false">Clique Aqui</a> Ao clicar no link, é aberto um alerta. Ao clicar no link, é chamado o evento onclick, que abre um alerta com o texto "Link clicado!". O onclick é um evento DOM em HTML; em React seria onClick. O return false evita o comportamento padrão do navegador. O trecho de código é em HTML e JavaScript. Por conta do false, o link não redirecionará para outra página. 65 -Quando um evento é disparado, é possível tratá-lo para que aconteçam ações específicas dependendo do tipo do evento. Marque a opção que representa o início de um trecho de código de um manipulador de eventos: btn.onclick = function() { alert(“Alerta”); } O código que manipula o evento é o btn.onclick, que recebe uma função que emite um alerta. O render é um método React para apresentar o botão clicar na tela. O método setState é utilizado para atualizar o estado do componente. O <input> é um elemento HTML, e não um manipulador de eventos. O método handleEvent recebendo o handleEvent.bind é utilizado para tornar o handleEvent acessível em outro local. 66 - Quando um evento é disparado, ele pode ser propagado entre os métodos por meio de uma variável, com possibilidade de lançar uma exceção ou gerar erro, no caso de existirem problemas sintáticos ou semânticos no código. Analise o trecho de código a seguir e marque a opção correta: <button onClick={(e) => this.deleteRow(id, e)}>Deletar linha</button> O argumento “e” representa o evento do React. O argumento “e“ diz respeito ao evento do React, e não representa apenas erro ou exceção. O código não contém erros semânticos ou sintáticos. 67- Existem eventos genéricos para todos os navegadores, como também existem eventos específicos para determinados navegadores. Sobre os eventos DOM e React, marque a opção correta: Eventos em React são escritos usando camel case. Os nomes dos eventos em React são escritos usando camel case, em vez de letras minúsculas. Um elemento HTML DOM pode dispararum evento, e é possível retornar false nele para prevenir a ação padrão do evento. No manipulador de eventos React, a função é passada como manipulador de eventos. 68 - Considerando os principais elementos do Redux, cada um tem uma função específica no contexto do gerenciamento de estado. Sobre elementos do Redux: I – São disparados a partir de alguma ação do usuário ou evento do sistema, ativando as funções redutoras. II – É o local onde se armazena o estado global da aplicação; após, essa atualização informa seus ouvintes de que algo foi alterado e estes podem consultar os novos estados. III – São elementos que especificam como o estado do aplicativo é alterado em resposta às ações enviadas para a loja. Trata-se, sequencialmente, dos elementos: Dispatch; store; reducer. Dispatch é a função disparada a partir de alguma ação do usuário ou evento do sistema, ativando os redutores. Store é o local onde se armazena o estado global da aplicação, informando seus ouvintes das alterações no estado. Reducer é uma função que especifica como o estado do aplicativo é alterado em resposta às ações enviadas para a loja. 69- Pressupõe-se ter uma função reducer chamada red. Sabe-se que, sempre que criada, é preciso enviar a função redutora, e para tanto será criada uma loja chamada store. Como se realiza isso em um mesmo comando? I – Quando se cria uma loja, deve-se ao menos passar para ela uma função redutora. PORQUE II – A função redutora é que irá retornar a próxima árvore de estados, dadas a árvore de estados atual e uma ação a ser manipulada. As afirmações I e II estão corretas, e a II é uma justificativa para a I. Quando se cria uma loja, é necessário passar para ela uma função redutora, a qual irá manipular o estado atual em decorrência de uma ação disparada a ela por um dispatch. A segunda afirmação complementa a primeira, pois não há sentido para uma loja existir sem a manipulação da árvore de estado, feita pela função redutora, visto também que o estado inicial é enviado à loja também pela função. 70- Um componente para monitorar um estado global necessita, além de uma loja criada, fazer o processo de inscrição, em que ela irá ser notificada quando um estado dessa loja muda e precisa buscar o estado da aplicação e suas variáveis de interesse. Sobre as stores e suas funções, é correto afirmar: I – Para ser notificado se determinada loja sofreu alguma alteração em seu estado, pode-se utilizar a função store.subscribe(), que monitora qualquer alteração nela realizada. II – Para realizar a atualização de um componente após a mudança de estado de determinada loja, deve-se utilizar o store.subscribe(), que pode devolver o estado da aplicação com as informações necessárias. III – Quando é necessário utilizar as funções de manipulação das stores, deve-se importar um módulo do pacote Redux, o createStore. Somente as alternativas I e III estão corretas. As afirmações I e III estão corretas. Para realizar a inscrição em determinada loja, é necessário fazer a chamada da função subscribe(), que monitora as alterações no estado de uma loja. Deve-se importar o módulo createStore para usar todas as funções do Redux que permitem a manipulação da store. Faz-se isso por meio do comando: import { createStore } from 'redux'. A afirmação II está incorreta. Para buscar os dados na loja, é preciso fazer uso da chamada getState(), como, por exemplo, store.getState(). A subscrição somente informa que algo foi modificado. 71- A maneira mais fácil de começar a utilizar o Redux em aplicações é por meio das instalações dos pacotes pelo npm. Para utilizar dentro de uma aplicação React, qual(is) comando(s) é(são) obrigatório(s) para a(s) sua(s) instalação(ões)? npm install redux; npm install react-redux. Para a utilização do Redux, é preciso instalar a biblioteca por meio do comando npm install redux. Para utilizar juntamente com o React, é necessária a instalação do pacote por meio do comando npm install react-redux. 72- Existem funções no Redux que descrevem como o estado da aplicação será alterado. Servindo como regras, elas são as respostas do fluxo do Redux às ações da aplicação ou de usuários, ou de outros eventos. Nesse caso, trata-se de: Funções redutoras (ou reducers). No Redux, as funções responsáveis por descrever como o estado será alterado são as funções redutoras, ou reducers. Nelas estão as regras de o que e como o estado será alterado: uma espécie de regra para os eventos que acontecem na aplicação. 73 - O padrão RESTful se desenvolveu a partir do conceito de computação distribuída, em que partes de um mesmo sistema se localizam em máquinas ou em locais físicos diferentes. Partindo dessa premissa, qual alternativa a seguir está correta? A aplicação móvel é responsável, majoritariamente, pelo conceito de frontend, que é a parte que responde à interação com o usuário 74 - Na maior parte das aplicações para dispositivos móveis, há necessidade inerente de comunicação com servidores externos, que estão acessíveis por acesso à internet. Sendo assim, o que é um REST? Marque a opção correta. Um padrão de arquitetura de interconexão de aplicações. REST é um padrão de arquitetura de software que permite que os dados sejam trafegados utilizando o protocolo HTTP e a infraestrutura da própria Web. Nesse caso, um servidor, chamado de backend , expõe funções para o tratamento dos dados enviados e recebidos. 75- Uma aplicação pode ser chamada de RESTful quando é baseada no padrão REST de acesso a funcionalidades remotas por meio de APIs. Diante isso, é possível afirmar que: o método HTTP/GET é utilizado para buscar informações que já existem. Os métodos do protocolo HTTP são amplamente utilizados como "verbos" de ação para a arquitetura RESTful. O método GET é usado para buscar informações existentes. Transmite as informações pela própria URL, por isso não deve ser utilizado para dados sensíveis (como senhas, por exemplo). Os métodos POST e PUT têm funcionalidades similares, que é a de enviar e inserir dados no sistema, utilizando o corpo da requisição. Entretanto, existe uma diferença entre eles: deve-se utilizar PUT quando a URI que identifica o recurso já existe; e o POST quando o sistema criar uma nova URI para os dados inseridos ou alterados. 76- Quando dados são transmitidos e recebidos utilizando-se as APIs RESTful, é necessária uma notação comum a ambas as partes (ambos os lados) para que as aplicações se comuniquem. Em se tratando de REST, qual alternativa apresenta uma afirmativa correta? É viável, apesar de incomum, a representação dos dados em formato XML para transferência entre aplicações. Apesar de grande parte das aplicações baseadas em REST transferirem seus dados utilizando documentos JSON, é possível fazer essa transferência de dados em outros padrões notacionais, como o XML - mais antigo ou até mesmo texto puro. As requisições, muito frequentemente, coincidem com as operações CRUD, mas não se limitam a elas. Observe que uma requisição é uma chamada a uma função remota, que não necessariamente será um CRUD. Os dados podem ser enviados pela URL ou pelo corpo da requisição, e seu retorno é tanto por meio de palavras predefinidas, quanto por códigos de resposta HTTP. 77- As aplicações baseadas na arquitetura REST transmitem seus dados pela Web e pelo protocolo HTTP. As chamadas a dados são denominadas requisições e seus pontos de conexão remotos são nomeados de endpoints. Em relação à transmissão dos dados sobre arquitetura REST, qual alternativa está correta? O servidor não mantém o estado da conexão. É necessário o envio da informação completa e, após a resposta, o ciclo se encerra. Cada requisição é única. No padrão RESTful, cada requisição é única e deve ser completa, ou seja, conter todos os dados necessários para ser efetuada. Contudo, transmitir login e senha a cada requisição não é uma boa prática, existindo mecanismos para evitar o tráfego de dados sensíveis (como o JWT, por exemplo). Em relação ao servidor, este não mantém os dados após concluira requisição e enviar a resposta à aplicação que a originou - o que diferencia de outras arquiteturas como o SOAP. Justamente por tratar cada requisição como completa e única, é ideal para redes instáveis e com velocidade variável, como as redes móveis 3G e 4G.
Compartilhar