Logo Passei Direto
Buscar

comunicação entre aplicações - tema6 (2024.1)

User badge image
Joy

em

Ferramentas de estudo

Questões resolvidas

Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Prévia do material em texto

Você acertou 10 de 10 questões
Verifique o seu desempenho e continue treinando! Você pode refazer o exercício quantas vezes quiser.
Verificar Desempenho
A
B
C
D
E
A
B
C
D
E
A
B
C
D
E
A
B
C
D
E
A
B
C
D
E
A
B
C
D
E
A
B
C
D
E
A
B
C
D
E
A
B
C
D
E
A
B
C
D
E
1 Marcar para revisão
Com o avanço das tecnologias, ocorreu o surgimento de diversas plataformas e ambientes de desenvolvimento,
bem como necessidades intrínsecas à heterogeneidade atual. Ao adotar o formato JSON, um servidor REST
busca garantir qual fator relevante para as novas plataformas?
Responsividade
Usabilidade
Reflexividade
Jogabilidade
Interoperabilidade
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
A usabilidade sempre foi uma necessidade para qualquer sistema, pois define o nível de ergonomia e
simplicidade de uso. No contexto de jogos, essa usabilidade é traduzida como jogabilidade. No que diz
respeito às interfaces de usuário, elas devem ser construídas para se adaptarem às mais diversas
plataformas, o que define o conceito de responsividade. O termo reflexividade, embora não seja uma
necessidade decorrente da heterogeneidade, refere-se à capacidade de um objeto, em linguagens como
Java, de reconhecer sua própria estrutura interna. A adoção do formato JSON por um servidor REST tem
como objetivo principal garantir a interoperabilidade, ou seja, a capacidade de comunicação entre
servidores que utilizam tecnologias distintas. Isso se deve à neutralidade do formato de dados JSON, que
permite essa comunicação eficiente e eficaz.
2 Marcar para revisão
A biblioteca Zeep permite criar clientes SOAP de forma extremamente simples no Python, com grande ganho de
produtividade. Considerando as opções seguintes, qual a informação correta acerca dos clientes construídos
com Zeep?
Os stubs são gerados com a passagem do endereço do WSDL no construtor do cliente.
É necessário especificar uma biblioteca de validação XML, como o lxml.
Precisa ser hospedado em um servidor Web, como aqueles criados com Django.
O resultado de uma chamada deve ser interpretado por um parser XML.
Obriga a definição dos envelopes SOAP em variáveis de texto do Python.
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
A alternativa correta é a A. A biblioteca Zeep, ao receber o endereço do WSDL �Web Services Description
Language) no construtor do cliente, gera automaticamente os stubs. Esses stubs permitem que as
chamadas aos métodos expostos sejam feitas de maneira semelhante a chamadas locais, mesmo que
estejam sendo transmitidas via protocolo HTTP. Todo esse processo é realizado de forma automática, sem
a necessidade de incluir validadores e interpretadores XML, ou de especificar no código o envelope SOAP.
Isso torna o processo extremamente simples e produtivo. Além disso, por ser um aplicativo cliente, não há
necessidade de hospedagem em um servidor.
3 Marcar para revisão
Um sistema está sendo construído para as lojas XPTO, e será necessária uma funcionalidade de busca de lojas
por estado, a partir de um recurso visual de seleção. Como os clientes podem acessar o sistema a partir de
ambientes móveis ou via Web, o engenheiro de software exige que os dados sejam fornecidos via Web Service
RESTful. Qual seria uma assinatura adequada, em Python, para o fornecimento das lojas a partir da UF,
obedecendo o padrão REST?
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
Ao utilizarmos uma anotação app.route, devemos informar a rota e os métodos HTTP aceitos para acesso
ao endereço, e se nenhuma informação acerca desses métodos estiver presente, será utilizado o método
GET por padrão. Segundo a arquitetura REST, devemos adotar o DELETE para exclusão, PUT para
alteração, POST para inclusão e GET para consulta, e no caso de uma pesquisa filtrada, a chave de
pesquisa deve ser fornecida no último segmento da rota. Para o fornecimento da rota em app.route, o
parâmetro de pesquisa deve ser colocado entre os sinais de menor e maior, sendo capturado em um
parâmetro de mesmo nome na função. Logo, a assinatura, no padrão REST, seria 
4 Marcar para revisão
Um sistema de boa complexidade, na área financeira, é composto de módulos CORBA, criados em C��,
módulos EJB, da plataforma Java, com acesso ao banco de dados DB2, e interfaces gráficas criadas em Delphi.
Os serviços são expostos e consumidos no formato SOAP, além de orquestrados na sintaxe BPEL. No caso
descrito, qual arquitetura estaria sendo adotada?
MVC
Pipeline
SOA
PAC
Broker
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
O sistema descrito na questão é caracterizado pela arquitetura SOA �Service Oriented Architecture). Esta
arquitetura é adotada quando se trabalha com diferentes plataformas, incluindo sistemas legados, que se
comunicam através da exposição de serviços com formatos padronizados. Um componente importante da
arquitetura SOA é o ESB �Enterprise Service Bus), onde ocorre a combinação dos serviços via BPEL. É
comum o uso dos modelos SOAP ou REST para fornecimento dos serviços na arquitetura SOA. Embora a
arquitetura Broker seja evidente para os objetos distribuídos, incluindo EJB e CORBA, isso não define a
arquitetura do sistema como um todo. Da mesma forma, não é possível afirmar se os componentes
internos utilizaram arquiteturas baseadas em camadas, como MVC ou PAC. O modelo Pipeline, por sua vez,
apenas define a saída de um programa alimentando a entrada seguinte, dentro do fluxo de execução, sem
a definição de serviços. Portanto, a alternativa correta é a SOA.
5 Marcar para revisão
O banco de dados PostgreSQL é amplamente utilizado no mercado de desenvolvimento, pois apresenta ótimas
características como repositório de dados. Entre as opções apresentadas, qual delas define corretamente uma
característica do banco de dados PostgreSQL?
Segue o modelo NoSQL documental, com armazenamento no formato JSON.
Não oferece suporte a transações, sendo gerados apenas logs de execução.
Permite apenas uma instância de banco por servidor.
Oferece uma ferramenta gráfica de administração denominada pgAdmin.
Segue o modelo NoSQL baseado em grafos.
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
O PostgreSQL é um sistema de gerenciamento de banco de dados relacional, o que contradiz diretamente
os modelos NoSQL. Ele possui um excelente suporte para transações e permite o gerenciamento de várias
instâncias de banco de dados no mesmo servidor. Além disso, para facilitar a administração e aumentar a
produtividade, o PostgreSQL oferece uma ferramenta gráfica chamada pgAdmin. Portanto, a alternativa
que define corretamente uma característica do banco de dados PostgreSQL é a alternativa D� "Oferece
uma ferramenta gráfica de administração denominada pgAdmin".
6 Marcar para revisão
Suponha uma classe DAO, implementada em Python, com acesso ao banco de dados através do SQL Alchemy,
onde as entidades utilizam o modelo declarativo do framework. Ao construir um Web Service RESTful, com
base no Flask, quais seriam os passos de codificação necessários para definir um processo de inclusão via
HTTP?
Definir uma função tendo a entidade como parâmetro, anotada para uma rota parametrizada, via
app.route, com base no método PUT do HTTP; e invocar o método de inclusão do DAO, com a
passagem da entidade obtida a partir da rota.
Definir uma função sem parâmetros, anotada para a rota de base, via app.route, com base no método
POST; obter os dados, com request.get_json; instanciar a entidade com os dados JSON obtidos; e
invocar o método de inclusão do DAO com a passagem da entidade.
Definir uma função tendo a entidade como parâmetro, anotada para uma rota parametrizada, via
app.route, com base no método POST do HTTP; transformar parao formato JSON via função jsonify; e
invocar o método de inclusão do DAO, com a passagem dos dados no formato JSON.
Definir uma função sem parâmetros, anotada para a rota de base, via app.route; obter uma entidade
com json.loads; e invocar o método de inclusão do DAO com a passagem da entidade.
Definir uma função sem parâmetros, anotada para a rota de base, via app.route; obter uma entidade
no atributo content de requests.get; transformar para o formato JSON via jsonify; e invocar o método
de inclusão do DAO, com a passagem dos dados no formato JSON.
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
De acordo com o padrão REST, a inclusão de dados é realizada na rota de base, utilizando o método POST
do HTTP. Isso implica na criação de uma função de tratamento que não possui parâmetros, a qual é
anotada com app.route para as características mencionadas. Dentro do corpo desta função, os dados da
requisição, que são fornecidos no formato JSON, devem ser recuperados utilizando request.get_json. No
entanto, o DAO opera apenas com entidades, portanto, é necessário instanciar uma entidade com os
dados recuperados. Finalmente, o método de inclusão do DAO é invocado, passando a entidade como
argumento. Portanto, a alternativa B é a correta, pois descreve corretamente este processo.
7 Marcar para revisão
Quando trabalhamos com ambientes interoperáveis, uma necessidade básica é a definição de um padrão
aberto para a descrição dos serviços que serão expostos para outras plataformas. Para os Web Services do
tipo SOAP, qual foi o padrão definido?
WSDL
IDL
OMG�IDL
WADL
UDDI
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
Em ambientes interoperáveis, é crucial definir um padrão aberto para descrever os serviços que serão
disponibilizados para outras plataformas. No caso dos Web Services do tipo SOAP, o padrão definido é o
WSDL �Web Services Description Language). Este padrão é usado para descrever a funcionalidade
oferecida por um serviço web. Além disso, é importante mencionar que o UDDI é utilizado para o registro
desses serviços. Para os Web Services RESTful, o formato WADL é adotado para a descrição dos serviços.
Já o RPC utiliza o IDL e o CORBA trabalha com o OMG�IDL.
8 Marcar para revisão
Em comparação com a abordagem tradicional de desenvolvimento, com todos os módulos e funcionalidades
em um bloco único, a abordagem baseada em microsserviços prega que as aplicações sejam desmembradas
em componentes mínimos e independentes, os quais precisam trabalhar juntos para realizar tarefas. Existem
múltiplas vantagens nessa nova abordagem, mas ______________________ NÂO É uma delas. Qual opção completa
corretamente a lacuna? 
Compartilhamento de Funções e Processos entre várias Aplicações
Grande Escalabilidade
Garantia de Responsividade 
Maior facilidade na criação de Testes Unitários
Alta Disponibilidade
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
No que se refere ao compartilhamento de funcionalidades, Interoperabilidade é a característica primordial
do novo modelo. Além da interoperabilidade, com a fragmentação do sistema temos melhorias em termos
de Escalabilidade e Disponibilidade, além de facilidades no projeto e execução de Testes Unitários. A única
característica que NÃO É uma vantagem do novo modelo é a Garantia de Responsividade, já que trata de
elementos de back-end, com o simples trânsito de dados, sem qualquer interface gráfica para interação
com o usuário.     
9 Marcar para revisão
Ao contrário dos Web Services, que apenas fornecem dados, a partir da exposição de serviços, sem a definição
de uma interface de usuário, nos aplicativos Web temos o retorno de conteúdo HTML para cada requisição
efetuada, permitindo a interação com o usuário através de um navegador, como Chrome ou Edge. No caso do
Django, podemos tratar a requisição através de uma função Python, direcionando os resultados para um
template HTML, como no trecho de código apresentado a seguir. Qual a informação correta acerca da função
apresentada?
Não é necessário mapear a rota, sendo assumido o nome da função de forma automática.
Os dados serão enviados para um template com o nome index.html, no diretório templates, através de
um dicionário que é associado ao parâmetro context.
Para que seja criado o conteúdo HTML de saída, é utilizado um cliente zeep, apontando para o
descritor de um serviço.
O parâmetro request é opcional, colocado aqui apenas para facilitar o entendimento.
Para os dados obtidos do Web Service SOAP via cliente zeep, será necessário utilizar um parser XML
ao nível do template HTML.
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
Uma função de tratamento tem obrigatoriamente um parâmetro request, para receber a requisição HTTP, e
deve ser mapeada para uma rota no arquivo urls.py. Podemos obter os dados a partir de um Web Service
SOAP, de forma simples, com base em um cliente zeep, sem a necessidade de parsers XML, e os dados
obtidos serão transmitidos para o template através de um dicionário Python. Ao final da função, ocorre o
retorno do conteúdo HTML, com base na chamada para render, onde é utilizado o elemento request, e os
dados são enviados para o template correto (index.html), associando o dicionário gerado ao parâmetro
context.   
10 Marcar para revisão
Ao trabalharmos no ambiente Python, qual biblioteca permite a definição de Web Services do tipo SOAP, entre
outros serviços no estilo RPC, de forma simples, com base em um pequeno conjunto de anotações e seguindo
o paradigma orientado a objetos?
django
lxml
zeep
pandas
spyne
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
A biblioteca correta é a spyne. Ela permite a definição de serviços SOAP, com base em classes que
descendem de ServiceBase. Os métodos expostos nessa biblioteca devem utilizar a anotação rpc. Para
que os Web Services sejam executados, eles são hospedados em um servidor Web, que pode ser definido
via Django. A validação do formato XML é realizada através de bibliotecas como o lxml. Quanto ao zeep,
ele é utilizado no cliente, enquanto o pandas é utilizado para análises estatísticas. Portanto, a alternativa
correta é a spyne, que permite a definição de Web Services do tipo SOAP de maneira simples e orientada a
objetos.
Questão 1 de 10
Corretas �10�
Em branco �0�
1 2 3 4 5
6 7 8 9 10
Exercicio Web Services Em Python Sair

Mais conteúdos dessa disciplina