Buscar

Aula 06 - Exercícios SD (1)

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Exercícios da Aula 06 
Aluno (s): Renato Mendes de Castro		RA: D321JD-6		Periodo: 6º/7º
Professor: Jair Alarcón Disciplina: Sistemas Distribuídos	
Questão 1. Qual é a principal função de um controlador (Controller) no backend Java?
 O Controlador (controller) envia comandos para o modelo para atualizar o seu estado (por exemplo, editando um documento). O controlador também pode enviar comandos para a visão associada para alterar a apresentação da visão do modelo (por exemplo, percorrendo um documento).
Questão 2. O uso de WebServices é fundamental para Computação Distribuída. O objetivo dos Web Services é a comunicação de aplicações através da Internet. Esta comunicação é realizada com intuito de facilitar a EAI (Enterprise Application Integration) que significa a integração das aplicações de uma empresa.
	Leia a descrição dos dois protocolos de WebServices mais utilizados abaixo e responda a questão:
PROTOCOLO X:
É um protocolo de transferência de mensagens em formato XML para uso em ambientes distribuídos. O padrão funciona como um tipo de framework que permite a interoperabilidade entre diversas plataformas com mensagens personalizadas.
	Aplicando este padrão em Web Services, geralmente usa-se o WSDL para descrever a estrutura das mensagens e as ações possíveis em um endpoint.
	Uma das maiores vantagens disso é que várias linguagens e ferramentas conseguem ler e gerar mensagens facilmente. Várias linguagens de programação permitem a geração de objetos de domínio, Stubs e Skeletons a partir da definição do WSDL, permitindo a comunicação remota via RPC através de chamadas a métodos remotos, inclusive com argumentos complexos, como se fossem chamadas locais.
	O problema desse padrão, é que ele adiciona um overhead considerável, tanto por ser em XML quanto por adicionar muitas tags de meta-informação. Além disso, a serialização e desserialização das mensagens pode consumir um tempo considerável.
PROTOCOLO Y:
É outro um protocolo de comunicação, baseado no protocolo de hipermídia HTTP. Porém ele não impõe restrições ao formato da mensagem, apenas no comportamento dos componentes envolvidos.
	A maior vantagem do protocolo é sua flexibilidade. O desenvolvedor pode optar pelo formato mais adequado para as mensagens do sistema de acordo com sua necessidade específica. Os formatos mais comuns são JSON, XML e texto puro, mas em teoria qualquer formato pode ser usado.
	Isso nos leva a outra vantagem: quase sempre Web Services que usam REST são mais "leves" e, portanto, mais rápidos.
	O problema pode surgir justamente por causa de suas vantagens. Como a definição do corpo de dados fica totalmente a cargo do desenvolvedor, os problemas de interoperabilidade são mais comuns.
Os protocolos X e Y são, respectivamente:
(A) HTTP e SOAP.
(B) REST e SOAP.
(C) SOAP e HTTP.
(D) HTTP e REST.
(E) SOAP e REST.
Resposta: E) SOAP e REST
Questão 3. As duas APIS mais importantes para WebServices em Java, criadas para criar WebServices SOAP e WebServices REST, são, respectivamente:
(A) JAX-WS e JAX-RS.
(B) JAX-RS e JAX-WS.
(C) Ambas JAX-WS.
(D) Ambas JAX-RS.
(E) Nenhuma das anteriores.
Resposta: A) JAX-WS e JAX-RS.
Questão 4. Qual é a diferença da anotação @Controller e @RestController no Spring?
A annotation @RestController no Spring MVC nada mais é do que uma combinação das annotations @Controller e @ResponseBody. O trabalho do @Controller é criar um Map do model object e encontrar uma view, mas o @RestController simplesmente retorna o objeto e os dados do objeto são gravados diretamente na resposta HTTP como JSON ou XML.
Questão 5. Cite um caso onde é recomendável o uso de microserviços ao invés de arquitetura monolítica.
É recomendável o uso de microserviços quando existe a necessidade que o serviço continue a ser executado, mesmo quando um dos pontos do serviço falha, como é o caso de serviços de streamings, por exemplo
Questão 6. Qual é a função do arquivo pom.xml em um projeto maven?
O pom.xml é um dos arquivos mais importantes em um projeto Maven, ele descreve uma série de configurações que o projeto terá e quais repositórios e dependências seu projeto irá precisar.
Questão 7. Qual é a vantagem de utilizar Maven em um projeto Java?
Economizar tempo gasto que era gasto em código SQL e código JDBC, pois a maior parte do tempo de desenvolvimento era gasta com isso
Questão 8. Qual é a diferença entre @RequestMapping e @GetMapping no Spring Boot?
A principal diferença é que RequestMapping pode ser usado em nível de classe, enquanto o enquanto GetMapping só se aplica ao método
Questão 9. Descreva qual é a funcinalidade de cada uma das anotações do Spring:
a) @GetMapping que é um atalho para 
@RequestMapping(method = RequestMethod.GET)
Notação para mapeamento de solicitações HTTP GET em métodos manipuladores específicos.
b) @PostMapping que é um atalho para
@RequestMapping(method = RequestMethod.POST)
Notação para mapeamento de solicitações HTTP POST em métodos manipuladores específicos.
c) @PutMapping que é um atalho para
@RequestMapping(method = RequestMethod.PUT)
Notação para mapeamento de solicitações HTTP PUT em métodos manipuladores específicos.
d) @DeleteMapping que é um atalho para
@RequestMapping(method = RequestMethod.DELETE)
Notação para mapeamento de solicitações HTTP DELETE em métodos manipuladores específicos.
Questão 10. Qual é a principal funcionalidade da API Jackson dentro do Spring Boot?
o Spring Boot utiliza a lib Jackson para realizar o processo de serialização e deserialização de objetos.
Questão 11. Qual é a finalidade da anotação @SpringBootApplication do Spring Boot?
A anotação @SpringBootApplication é uma anotação de conveniência que contém as seguintes anotações do Spring: @Configuration, @EnableAutoConfiguration e @ComponentScan. Essas duas últimas, basicamente, dizem ao inicializador do Spring: “Busque e instancie todo bean anotado deste pacote para frente”.
Questão 12. Qual foi o verbo HTTP utilizado na requisição da figura abaixo?
Resposta: Foi utilizado o SOAP na requisição da figura
Questão 13. Defensoria Pública (DPE/AM) 2018 - Assistente Técnico em Tecnologia da Informação de Defensoria - Fundação Carlos Chagas (FCC)
De acordo com a arquitetura REST, um serviço Web RESTful:
(A) Deve manter um estado de cliente no servidor.
(B) Não consegue tratar cada requisição de forma independente.
(C) Suporta somente os métodos GET e POST.
(D) Não funciona bem com os protocolos HTTP.
(E) Não deve manter um estado de cliente no servidor.
Resposta: E) Não deve manter um estado de cliente no servidor.
Questão 14. Se um serviço web baseado na arquitetura REST (RESTful) está localizado em http://www.trf5.jus.br/employee, quando o cliente fizer uma requisição a este serviço deverá:
(A) Usar a Web Services Description Language para descrever as regras de comunicação com o serviço.
(B) Usar JAX-WS para sincronizar a comunicação com o serviço.
(C) Estabelecer e manter essa conexão com o servidor até o final da troca de mensagens SOAP.
(D) Usar um dos métodos HTTP como POST, GET, PUT ou DELETE.
(E) Enviar um sinal beacon solicitando ao servidor uma porta para conexão.
Resposta: D) Usar um dos métodos HTTP como POST, GET, PUT ou DELETE.
Questão 15. 2019 - IADES - Analista de Tecnologia da Informação
No contexto de microsserviços, trata-se de uma abstração da arquitetura da web. Resumidamente, consiste em princípios/regras/constraints que, quando seguidos, permitem a criação de um projeto com interfaces bem definidas, dessa forma, permitindo, por exemplo, que aplicações se comuniquem.
Disponível em: <https://becode.com.br/> . Acesso em: 8 ago. 2019, com adaptações.
Essa definição diz respeito a:
(A) WSDL.
(B) SDK.
(C) JSON-RPC.
(D) XML-RPC.
(E) REST API.
Resposta: E) REST API
Questão 16. 2019 - FCC - SEFAZ-BA - SEFAZ-BA - Auditor Fiscal - Administração, Finanças e Controle Interno - Prova II
Os web services são componentes de software na web que podem fornecer determinados serviços a aplicações criadas em diferentes linguagens. Podem usar o protocoloSOAP para transferência de mensagens em formato XML. Para descrever a estrutura destas mensagens geralmente utiliza-se:
(A) REST.
(B) WSDL.
(C) CORBA.
(D) RESTFUL.
(E) HTML.
Resposta: B) WSDL

Continue navegando