Baixe o app para aproveitar ainda mais
Prévia do material em texto
Usuário HELDER LIMA DE JESUS Curso GRA0813 JAVA WEB E FRAMEWORKS GR1771-212-9 - 202120.ead- 17586.01 Teste ATIVIDADE 2 (A2) Iniciado 23/11/21 19:23 Enviado 23/11/21 20:54 Status Completada Resultado da tentativa 9 em 10 pontos Tempo decorrido 1 hora, 31 minutos Resultados exibidos Respostas enviadas, Respostas corretas, Comentários Pergunta 1 Resposta Selecionada: Resposta Correta: Comentário da resposta: Um web service nada mais é que um serviço armazenado em um servidor que pode ser acessado por outras aplicações pela rede (i.e. a Internet) para executar determinadas tarefas. Assim, web services podem ser classificados em duas categorias: aquelas que usam o protocolo SOAP e aquelas que usam o modelo REST. Considerando o exposto, sobre REST, analise as afirmativas a seguir: I. REST é a sigla de Representational State Transfer . II. REST somente funciona caso o protocolo de aplicação utilizado na comunicação for o HTTP. III. Dados na arquitetura REST são representados utilizando apenas JSON. IV. O servidor em uma arquitetura REST mantém o estado da sessão. Está correto o que se afirma em: I e II, apenas. I e II, apenas. Resposta correta. A alternativa está correta, pois a sigla de REST signi�ca Representational State Transfer e, como os serviços REST implementam os verbos HTTP (GET, POST, UPDATE e DELETE), é necessário que esse seja o protocolo utilizado na comunicação. Pergunta 2 1 em 1 pontos 0 em 1 pontos Resposta Selecionada: Resposta Correta: Comentário da resposta: Para que dois computadores se comuniquem por meio de uma rede, é necessário utilizar sockets . Desse modo, é possível fazer com que dois processos que estão sendo executados em dispositivos diferentes troquem informações. No entanto, levando em consideração a possibilidade de um socket identificar outro em uma rede com vários dispositivos, assinale a alternativa que apresenta corretamente de que forma isso ocorre. Para identi�car um socket, é utilizado seu endereço IP e, para identi�car o dispositivo onde o socket está, é utilizado o número da porta do dispositivo. Para identificar um socket, é utilizado o número da porta em que o socket está sendo executado e, para identificar o dispositivo onde o socket está, é utilizado o endereço IP do dispositivo. Sua resposta está incorreta. A alternativa está incorreta, pois é necessário identi�car a porta que o socket está ouvindo, já que é possível que vários serviços estejam sendo executados na mesma máquina, ou seja, ouvindo outras portas. Assim, a �m de identi�car um dispositivo conectado à rede, utilizamos seu endereço IP. Pergunta 3 Resposta Selecionada: Resposta Correta: Comentário da resposta: Para que aplicações web na linguagem de programação Java sejam desenvolvidas, específicas ferramentas e aplicações de terceiros são empregadas, por exemplo, os denominados frameworks, que permitem programar em um nível maior de abstração. Assim, funções que comumente precisam ser implementadas em aplicaçẽos web são disponibilizadas por esses softwares. Um exemplo de ferramenta é o Jersey. Com base na função desse software, assinale a alternativa correta. O Jersey é um framework para desenvolver web services utilizando a arquitetura REST. O Jersey é um framework para desenvolver web services utilizando a arquitetura REST. Resposta correta. A alternativa está correta. O framework Jersey é utilizado para tornar mais fácil o desenvolvimento de web services que utilizam a arquitetura REST e que são programados em Java. Esse framework é um dos mais populares para esse tipo de aplicação, além de permitir mapear funções Java para URLs HTTP de maneira simples. 1 em 1 pontos Pergunta 4 Resposta Selecionada: Resposta Correta: Comentário da resposta: Para desenvolver aplicações web, é necessário que haja a comunicação entre dispositivos remotos conectados em uma rede. Uma das tecnologias que permite a comunicação entre dispositivos em uma rede equivale aos sockets , sendo que o socket servidor recebe uma requisição do socket cliente, processando-a e, na sequência, responde ao cliente . Referente ao exposto, assinale a alternativa que apresenta a instrução que instancie um socket servidor corretamente. ServerSocket socketServidor = new ServerSocket(3366); ServerSocket socketServidor = new ServerSocket(3366); Resposta correta. A alternativa está correta, pois, para se criar um socket servidor, apenas é necessário passar como parâmetro de entrada a porta que será associada a esse socket. Assim, o socket servidor não irá fazer requisições de conexão a outros dispositivos. Por esse motivo, não precisa de um IP de outro dispositivo para se conectar. Pergunta 5 Resposta Selecionada: Resposta Correta: Comentário da resposta: Para desenvolver aplicações web na linguagem de programação Java, utilizam-se algumas ferramentas e aplicações de terceiros, as quais permitem programar em um nível maior de abstração. Uma das ferramentas mais utilizadas nesse ambiente é o Maven. Levando em consideração a função desse software, assinale a alternativa correta. O maven é responsável por gerenciar as dependências do nosso projeto. O maven é responsável por gerenciar as dependências do nosso projeto. Resposta correta. A alternativa está correta, pois o maven é o software utilizado para gerenciar as dependências do nosso projeto. Com ele, não precisamos obter manualmente cada biblioteca do site do desenvolvedor, tampouco como integrá-la no nosso projeto, pois essa ferramenta irá automatizar isso para nós. Pergunta 6 Sockets são utilizados para que processos sendo executados em dispositivos 1 em 1 pontos 1 em 1 pontos 1 em 1 pontos Resposta Selecionada: Resposta Correta: Comentário da resposta: conectados em uma rede consigam trocar informações. Para estabelecer uma conexão no modelo cliente-servidor, alguns passos são importantes, conforme ilustrados na seguinte figura: Fonte: Adaptada de Dew1978 / Wikimedia Commons. Com base nessa figura, observa-se que algumas etapas foram substituídas por números. Quais são essas etapas, respectivamente? Associação com porta, Ouve Porta, Conexão, Fecha Conexão. Associação com porta, Ouve Porta, Conexão, Fecha Conexão. Resposta correta. A alternativa está correta. Primeiramente, o socket servidor, apontado como 1 na �gura, associa-se a uma porta, depois escuta essa porta (2) e, posteriormente, o cliente (por meio de um socket) solicita conexão com o servidor, sendo a etapa 3 da �gura. Em seguida, o servidor recebe a solicitação e, depois, a aceita. Uma vez que a conexão está estabelecida, eles trocam mensagem. Quando a troca é �nalizada, fecha-se a conexão, como ilustrado pelo passo 4 presente tanto no cliente quanto no servidor. Pergunta 7 Resposta Selecionada: Resposta Correta: Comentário da resposta: Toda vez que acessamos uma página web, uma rede social ou uma loja virtual, estamos navegando na World Wide Web, a rede mundial de computadores, considerando que os nossos dispositivos (clientes) se comunicam com esses sites (servidores) ao utilizarem o modelo Cliente-Servidor. Sobre esse modelo, assinale a alternativa correta. No modelo cliente-servidor, clientes enviam requisições para um servidor centralizado, que as processa e retorna a resposta ao cliente. No modelo cliente-servidor, clientes enviam requisições para um servidor centralizado, que as processa e retorna a resposta ao cliente. Resposta correta. A alternativa está correta, pois, nesse modelo, clientes - processos que estão sendo executados em dispositivos na rede - requisitam serviços de um determinado servidor que processa as requisições e retorna a cada cliente a resposta do serviço solicitado. Normalmente, clientes são dispositivos que interagem com o usuário, como smartphones, computadores e notebooks, e os servidores são computadores que possuem hardware mais so�sticado e costumam estar em data centers. Pergunta 8 O trecho de código a seguir é umaimplementação de um socket servidor de uma aplicação desenvolvida na linguagem de programação Java. Nesse programa, foi removida uma linha e inserida no local <linha removida> . public void start( int porta) { try { ServerSocket socketServidor = new ServerSocket(porta); Socket socketCliente; <linha removida> PrintWriter saida = new PrintWriter ( socketCliente.getOutputStream(), true ); BufferedReader entrada = new BufferedReader( new InputStreamReader (socketCli ente.getInputStream())); 1 em 1 pontos 1 em 1 pontos Resposta Selecionada: Resposta Correta: Comentário da resposta: String entradaCliente = entrada.readLine(); System.out.println( "Mensagem do cliente: " + entradaCliente); saida.println( "Olá Cliente!" ); entrada.close(); saida.close(); socketCliente.close(); socketServidor.close(); } catch ( IOException e) { e.printStackTrace(); } } Com base no exposto, assinale a alternativa que apresenta a instrução que deveria estar na linha removida. socketCliente = socketServidor.accept(); socketCliente = socketServidor.accept(); Resposta correta. A alternativa está correta. A linha faltante se refere ao aceite da conexão do cliente e da criação de um novo objeto socket (socketCliente) que será utilizado para comunicação entre o servidor e esse determinado cliente. Por essa razão, precisamos utilizar o objeto do socket do servidor já criado e fazê-lo escutar uma porta até que uma conexão seja requisitada para, assim, aceitar essa conexão. Isso é feito pelo método accept(). Pergunta 9 Resposta Selecionada: Um web service nada mais é que um serviço armazenado em um servidor que pode ser acessado por outras aplicações pela rede (i.e. a Internet) para executar determinadas tarefas. Uma das formas de se implementar web services é por meio da arquitetura REST, que é a forma mais popular atualmente. Assim, o cache de aplicações é considerado uma das características do REST que o ajudou a ganhar popularidade. A respeito desse cache, assinale a alternativa correta. 1 em 1 pontos Resposta Correta: Comentário da resposta: Cache é a habilidade de uma aplicação de armazenar cópias de dados frequentemente requisitados por certo período. Dessa maneira, quando esses mesmos dados são requisitados novamente, não é preciso fazer uma solicitação ao servidor. Cache é a habilidade de uma aplicação de armazenar cópias de dados frequentemente requisitados por certo período. Dessa maneira, quando esses mesmos dados são requisitados novamente, não é preciso fazer uma solicitação ao servidor. Resposta correta. A alternativa está correta. Cache é uma das principais características da arquitetura REST. É a habilidade de armazenar no cliente os resultados das requisições mais frequentes. Dessa forma, quando essa requisição se repetir, a resposta armazenada é utilizada. Pergunta 10 O trecho de código a seguir é uma implementação de um socket cliente de uma aplicação desenvolvida na linguagem de programação Java. No programa, veja que foi removida uma linha e inserida no local <linha removida> . public static void main( String [] args) { try { Socket socketCliente = new Socket( "127.0.0.1" , 4242 ); PrintWriter saida = new PrintWriter( socketCliente.getOutputStream(), true ); BufferedReader entrada = new BufferedReader( new InputStreamReader(socketCl iente.getInputStream())); saida.println( "Olá servidor!" ); String resposta; <linha removida> System.out.println( "O servidor disse: " + resposta); entrada.close(); saída.close(); socketCliente.close(); } catch ( IOException e) { e.printStackTrace(); } } 1 em 1 pontos Segunda-feira, 29 de Novembro de 2021 19h58min00s BRT Resposta Selecionada: Resposta Correta: Comentário da resposta: Diante do exposto, assinale a alternativa que apresenta a instrução que deveria estar na linha removida. resposta = entrada.readLine(); resposta = entrada.readLine(); Resposta correta. A alternativa está correta. Como a linha abaixo irá imprimir a resposta do servidor na tela, é necessário lê-la. Para ler algo do servidor, é necessário chamar o objeto de �uxo de entrada e o método readLine.
Compartilhar