SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Perguntas Apresentação Anterior
- Pop e remove qual a diferença ? Pop retorna o objeto, remove um booleano.
- Variaveis atomicas no syncronized ? São variaveis thread-safe, trabalham com
dois parametros(atual valor,novo valor) sempre apos um set fazem um get.
- Daemon Thread o que e como funciona ? Daemon threads são interrompidas
quando a thread principal, servem as threads user.(GC)
- Como funciona a comparação em java ? Com “==” compara a referencia do
objeto, para comparar se um objeto tem os mesmos atributos deve-se sobreescrever o
equals e hash
- Como a jvm trabalha com threads ? as threads são escalonadas de forma
preemptiva seguindo a metodologia “round-robin”. Isso quer dizer que o
escalonador pode pausá-las e dar espaço e tempo para outra thread ser executada.
Java 8 – Interfaces Funcionais
Exemplo:
#Somente um metodo abstrato.
#Instanciação em classe anonima.
#Possibilita o uso de lambda.
Thread implementa Runable esta tendo apenas run();
Java 8 – Streams(JEP 107)
Reduzir a preocupação do
desenvolvedor com a forma de
implementar controle de fluxo
ao lidar com coleções,
deixando isso a cargo da API.
Motivo:
Java 8 – Streams(JEP 107)
Exemplo De Uso
Java 8 – Metodos Default
Interface Iterable metodo forEach implementado Default.
Java 8 – Metodos Default
Java 7 – Metodos eram declarados nas interfaces e tinham
que ser implementados na classe que a utilizava.
Java 8 – Metodos default permitem ser implementados na
interfaces fazendo com que não há a necessidade da classe
abaixo implementa-lo. E ainda podem ser sobrescritos.
Facilita a manutenção, caso necessite alterar a interface não
será necessario alterar quem a implementa.
Java 9 – Java Modular(Jigsaw JEP 200;376)
#Modularizar o jdk
#Permitir o desenvolvimento de aplicações modulares.
#isolar as bibliotecas de terceiros
#melhorar o encapsulamento e fugir do famoso jarHell.
Motivação :
Java 9 – Java Modular(Jigsaw JEP 200;376)
Estrutura java 9
Java 9 – Java Modular(Jigsaw JEP 200;376)
EXEMPLO ARQUIVO MODULE-INFO
Exports: Para poder importar um pacote de outro modulo primeiro deve exporta-lo.
Requires: Adiciona uma dependencia ao pacote solicitado.
Caso seja declarado como static ele se torna opcional em tempo de execução.
Java 9 – Java Modular(Jigsaw JEP 200;376)
Modularizado:
#O que não era necessario importação continua dessa forma
(fazem parte do modulo principal).
#Encapsulamento mais forte.
#redução e explicitação de dependencias entre componentes.
#não teremos mais de uma versão da mesma classe em
runtime(ResolutionException) assim evitando jarhell.
Java 9 – Java REPL(Jshell JEP222)
Read-Evaluate-Print-Loop(REPL) – Fornece algo ao console e
é processado automaticamente.
Java 9 – Java REPL(Jshell JEP222)
Detalhes :
#Jshell necessita dos imports eternos tambem.(Shift+Tab+i) .
#Pode usar classes locais criadas pelo usuario.
Vantagens :
Principal vantagem no uso do jshell é não ter a necessidade de criar todo o
projeto para testar algo simples...modificando muito a forma de se aprender java.
Java 10 – Local-Variable Type Inference (JEP286)
Var :
Java 9
Java 10
Java 10 – Local-Variable Type Inference (JEP286)
#Somente variáveis locais com inicializadores.
#Não funciona com retorno de metodo nem com lambda.
Java 10 – Garbage Collector Interface(JEP 304)
Antes : Codigo utilizados pelos GC’s espalhados pelo jdk.
Depois: Interface controlando os GC’s assim facilitando a evolução
dos mesmos e criação de novos, alem de organizar o codigo dos
mesmos.
Tornar mais fácil excluir um GC de uma compilação do JDK
A interface do GC pela classe existente CollectedHeap, que todo GC
precisa implementar. Conduziria a maioria dos aspectos de
interação entre o GC e o restante do HotSpot
Java 11 - Local-Variable Syntax for Lambda
Parameters(JEP 323)
Permite a inferência de tipos para variáveis locais em expressões
lambda.
Todas as veriaveis(var);
Utilidade:
Exemplo:
Java 11 - Local-Variable Syntax for Lambda
Parameters(JEP 323)
Vantagem :
#ajudam a reduzir o número de erros no código.
#O compilador pode emitir alertas ao concluir que o código
não atende a certos requerimentos.
Exemplo de Erro:
Programas de arquivo único - em que todo o programa se encaixa em um único
arquivo de origem - são comuns nos estágios iniciais de aprendizado do Java.
Famoso HelloWorld.java.
Por exemplo, se um arquivo chamado HelloWorld.java contém uma classe chamada
hello.World, então o comando abaixo vai compilar e executar o HelloWorld
java HelloWorld.java.
Java 11 - Launch Single-File Source-Code
Programs(JEP 330)
Protocolo HTTP
HyperText Transfer Protocol
● ​​​​permite a comunicação entre
clientes(User-agent) e servidores
através da internet.
● Request = requisição.
● Response = resposta.
Protocolo HTTP
GET:
#Exemplo de GET no java:
#Mensagem referente a solicitação:
#Resposta da solicitação:
Protocolo HTTP
POST:
#Exemplo de POST no java:
#Mensagem referente a solicitação:
#Resposta da solicitação:
Protocolo HTTP
Protocolo HTTP
● GET
Solicita a representação de um determinado recurso.
● POST
As informações enviadas no corpo (body) da requisição são utilizadas para criar um novo recurso.
● PUT
Atualiza um recurso na URI especificada. Caso o recurso não exista, ele pode criar um..
● DELETE
O método DELETE remove um recurso específico.
Metodos (Verbos HTTP).
Protocolo HTTP
● OPTIONS
É utilizado para que um cliente possa descobrir quais as opções de requisição permitidas para um
determinado recurso em um servidor.
● CONNECT
Serve para uso com um proxy que possa se tornar um túnel SSL (um túnel pode ser usado, por
exemplo, para criar uma conexão segura).
● TRACE
Devolve a mesma requisição que for enviada veja se houve mudança e/ou adições feitas por
servidores intermediários.
● HEAD
O método HEAD solicita uma resposta de forma idêntica ao método GET, porém sem conter o corpo
da resposta.
Metodos (Verbos HTTP).
Protocolo HTTP – STATUS
Status:
200 OK
A requisição foi bem sucedida.
301 Moved Permanently
O recurso foi movido permanentemente para outra URI.
302 Found
O recurso foi movido temporariamente para outra URI.
304 Not Modified
O recurso não foi alterado.
401 Unauthorized
A URI especificada exige autenticação do cliente. O cliente pode tentar fazer novas requisições.
403 Forbidden
O servidor entende a requisição, mas se recusa em atendê-la. O cliente não deve tentar fazer uma nova requisição.
404 Not Found
O servidor não encontrou nenhuma URI correspondente.
405 Method Not Allowed
O método especificado na requisição não é válido na URI. A resposta deve incluir um cabeçalho Allow com uma lista dos métodos aceitos.
410 Gone
O recurso solicitado está indisponível mas seu endereço atual não é conhecido.
500 Internal Server Error
O servidor não foi capaz de concluir a requisição devido a um erro inesperado.
502 Bad Gateway
O servidor, enquanto agindo como proxy ou gateway, recebeu uma resposta inválida do servidor upstream a que fez uma requisição.
503 Service Unavailable
O servidor não é capaz de processar a requisição pois está temporariamente indisponível.
Protocolo HTTP2
●
Fluxos multiplexados - capacidade de dividir uma mensagem HTTP em frames
independentes;
●
Server Push - pode mandar alguns recursos para o navegador sem ele mesmo ter
requisitado ainda;
● Headers HPACK - os headers são binários e comprimidos usando um algoritmo
chamado HPACK
● Prioridades e dependências - priorizar os recursos necessários para o usuário
começar a ver a página e interagir e deixar coisas secundárias pra depois;
novidades do HTTP 2.0
Protocolo HTTPS
HTTPS – Conexão segura.
incluem a chave SSL de 2048 bits e podem proteger uma conexão
de site por meio de autenticação e criptografia.
SOA X MICROSERVICES
Serviços
● é uma unidade de software que executa
uma função de negócio;
● Contrato definido:(entrada, saída,
restrições, comportamentos…);
● Consumidor não tem acesso a detalhes de
implementação;
● Auto contido,independente e modular;
● Pode reutilizar em outros contextos;
● Realiza uma função integralmente;
● Pode ser usado e administrado
individualmente;
● Pode ser combinado com outros serviços;
SOA X MICROSERVICES
SOA X MICROSERVICES
Exemplo ESB Midleware:(SOA)
SOA X MICROSERVICES
Diferenças:
Granularidade de serviço :
- Serviços dentro de MICROSERVICES geralmente tem proposito único
- SOA podem variar o tamanho, é comum ter um serviço representando um produto grande ou
subsistema.
Compartilhamento de componentes : SOA usa muito compartilhamento de serviços, O
SOA aprimora o compartilhamento de componentes, enquanto o MICROSERVICE tenta
minimizar o compartilhamento por meio de “contexto limitado”. Os sistemas construídos
em SOA provavelmente serão mais lentos que a MICROSERVICE.
SOA X MICROSERVICES
Serviços remotos : arquiteturas SOA dependem de mensagens (AMQP, MSMQ) e
SOAP como protocolos de acesso remoto primário. A maioria dos MICROSERVICES
conta com dois protocolos - REST e mensagens simples (JMS, MSMQ), e o protocolo
encontrado no MICROSERVICES é geralmente homogêneo.
Interoperabilidade heterogênea : SOA promove a propagação de múltiplos protocolos
heterogêneos através de seu componente de middleware(ex: zato)de mensagens. O
MICROSERVICES tenta simplificar o padrão de arquitetura reduzindo o número de opções
para integração. Se necessário vários sistemas usando diferentes protocolos em um
ambiente heterogêneo, deve considerar a SOA. Se todos os seus serviços pudessem ser
expostos e acessados através do mesmo protocolo de acesso remoto, o​​
MICROSERVICES seria uma opção melhor.
SOA X MICROSERVICES
MICROSERVICES, são mais
adequados para sistemas menores e
bem particionados, baseados na web,
nos quais os microsserviços
oferecem um controle muito maior
como desenvolvedor.
Quando Usar:
SOA é mais adequada para
ambientes de aplicativos de
negócios grandes e complexos que
exigem integração com muitos
aplicativos heterogêneos, ou seja,
aplicativos menores não são
adequados para SOA, pois não
precisam de um componente de
middleware de sistema de
mensagens.
SOA X MICROSERVICES
EXEMPLOS:
SOA X MICROSERVICES
Popularidade:
SOA X MICROSERVICES
MICROSERVICES grafico “DEATH STAR”
VERSIONAMENTO DE CONTRATO
Versionamento de api’s serve basicamente para não termos quebra de contrato
entre api e seus clientes.
- Versionamento pela URL.
- Versionamento pelo Header.
VERSIONAMENTO DE CONTRATO
URL Endpoint: subdomínio, path ou query string.
● Subdominio
https://api-v1.minhaApi/users.
Quem for consumir pode alterar apenas o subdomínio na requisição.
● Path
https://api.minhaApi/v1/users.
abordagens mais utilizadas, pois além de dar um visual mais clean na URL, facilita a
navegação para outras versões da API,
VERSIONAMENTO DE CONTRATO
● query string:
https://api.minhaApi/user/?version=1.
caiu em desuso, pois além de prejudicar a navegação para outras versões, a legibilidade da URL fica
ruim em cenários de muitos parâmetros na query string.
HEADER:Accept,header customizado
● Accept:
HTTP GET
https://api.minhaApi/user
Accept: application/vnd.minhaApi.v2+json
via HTTP content-type.
VERSIONAMENTO DE CONTRATO
● Header Customizado:
HTTP GET
https://api.minhaApi/user
Api-version: 2
O ponto positivo sua URL permanece intacta, ponto negativo a requisição tem que ser feita
com muito mais cuidado.

Weitere ähnliche Inhalte

Was ist angesagt?

Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)Helder da Rocha
 
Introdução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com JSPIntrodução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com JSPManoel Afonso
 
Mvc model view controller - java para desenvolvimento web
Mvc   model view controller - java para desenvolvimento webMvc   model view controller - java para desenvolvimento web
Mvc model view controller - java para desenvolvimento webValdir Junior
 
API de segurança do Java EE 8
API de segurança do Java EE 8API de segurança do Java EE 8
API de segurança do Java EE 8Helder da Rocha
 
Como construir aplicações gráficas e applets
Como construir aplicações gráficas e appletsComo construir aplicações gráficas e applets
Como construir aplicações gráficas e appletsDenis L Presciliano
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaEduardo Bregaida
 
Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Eduardo Mendes
 
Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)Helder da Rocha
 
Introdução a JPA (2010)
Introdução a JPA (2010)Introdução a JPA (2010)
Introdução a JPA (2010)Helder da Rocha
 
Java 8 - A Evolução da Linguagem
Java 8 - A Evolução da LinguagemJava 8 - A Evolução da Linguagem
Java 8 - A Evolução da LinguagemPetronio Candido
 
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrõesMC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrõesRodrigo Cândido da Silva
 
Conhecendo o Zend Framework
Conhecendo o Zend FrameworkConhecendo o Zend Framework
Conhecendo o Zend FrameworkJaime Neto
 
40 php orientado a objetos
40 php orientado a objetos40 php orientado a objetos
40 php orientado a objetosFrancisco Santos
 

Was ist angesagt? (20)

Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
 
Introdução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com JSPIntrodução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com JSP
 
Mvc model view controller - java para desenvolvimento web
Mvc   model view controller - java para desenvolvimento webMvc   model view controller - java para desenvolvimento web
Mvc model view controller - java para desenvolvimento web
 
API de segurança do Java EE 8
API de segurança do Java EE 8API de segurança do Java EE 8
API de segurança do Java EE 8
 
Java 9, 10, 11
Java 9, 10, 11Java 9, 10, 11
Java 9, 10, 11
 
Como construir aplicações gráficas e applets
Como construir aplicações gráficas e appletsComo construir aplicações gráficas e applets
Como construir aplicações gráficas e applets
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.java
 
Java Web 1 Introducao
Java Web 1 IntroducaoJava Web 1 Introducao
Java Web 1 Introducao
 
Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1
 
Apache e Java
Apache e JavaApache e Java
Apache e Java
 
Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)
 
Introdução a JPA (2010)
Introdução a JPA (2010)Introdução a JPA (2010)
Introdução a JPA (2010)
 
Java 8 - A Evolução da Linguagem
Java 8 - A Evolução da LinguagemJava 8 - A Evolução da Linguagem
Java 8 - A Evolução da Linguagem
 
Apres s3
Apres s3 Apres s3
Apres s3
 
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrõesMC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
 
jsp-intro
jsp-introjsp-intro
jsp-intro
 
Conhecendo o Zend Framework
Conhecendo o Zend FrameworkConhecendo o Zend Framework
Conhecendo o Zend Framework
 
Curso de Servlets
Curso de ServletsCurso de Servlets
Curso de Servlets
 
Cakephp 2.0 - O que mudou
Cakephp 2.0 - O que mudouCakephp 2.0 - O que mudou
Cakephp 2.0 - O que mudou
 
40 php orientado a objetos
40 php orientado a objetos40 php orientado a objetos
40 php orientado a objetos
 

Ähnlich wie Apresentação Java, SOA, MICROSERVICE, HTTP, HTTPS, VERSIONAMENTO DE CONTRATO,

Apresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - ConceitoApresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - ConceitoThiago Marinho
 
Apresentacao Boas praticas, revisão java, SOLID, KISS, DRY, design patterns, ...
Apresentacao Boas praticas, revisão java, SOLID, KISS, DRY, design patterns, ...Apresentacao Boas praticas, revisão java, SOLID, KISS, DRY, design patterns, ...
Apresentacao Boas praticas, revisão java, SOLID, KISS, DRY, design patterns, ...Vinicius Pulgatti
 
Modularidade na Web com Java: Desenvolvimento OSGI Web com Eclipse Virgo
Modularidade na Web com Java: Desenvolvimento OSGI Web com Eclipse VirgoModularidade na Web com Java: Desenvolvimento OSGI Web com Eclipse Virgo
Modularidade na Web com Java: Desenvolvimento OSGI Web com Eclipse VirgoRegis Machado
 
Novidades do JAX-RS 2.0
Novidades do JAX-RS 2.0Novidades do JAX-RS 2.0
Novidades do JAX-RS 2.0jesuinoPower
 
JBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRJBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRElvis Rocha
 
Introdução à Servlets e JSP
Introdução à Servlets e JSPIntrodução à Servlets e JSP
Introdução à Servlets e JSPledsifes
 
Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007Rafael Benevides
 
Desenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EEDesenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EELuan Felipe Knebel
 
Curso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web ApplicationCurso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web ApplicationMario Sergio
 
Implementação de Sockets em JAVA
Implementação de Sockets em JAVAImplementação de Sockets em JAVA
Implementação de Sockets em JAVAMarcio Palheta
 
JavaEE 7, na era do cloud computing
JavaEE 7, na era do cloud computingJavaEE 7, na era do cloud computing
JavaEE 7, na era do cloud computingEder Magalhães
 
Apostila: Curso de java III
Apostila: Curso de java IIIApostila: Curso de java III
Apostila: Curso de java IIIVerônica Veiga
 

Ähnlich wie Apresentação Java, SOA, MICROSERVICE, HTTP, HTTPS, VERSIONAMENTO DE CONTRATO, (20)

Apresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - ConceitoApresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - Conceito
 
Apresentacao Boas praticas, revisão java, SOLID, KISS, DRY, design patterns, ...
Apresentacao Boas praticas, revisão java, SOLID, KISS, DRY, design patterns, ...Apresentacao Boas praticas, revisão java, SOLID, KISS, DRY, design patterns, ...
Apresentacao Boas praticas, revisão java, SOLID, KISS, DRY, design patterns, ...
 
Modularidade na Web com Java: Desenvolvimento OSGI Web com Eclipse Virgo
Modularidade na Web com Java: Desenvolvimento OSGI Web com Eclipse VirgoModularidade na Web com Java: Desenvolvimento OSGI Web com Eclipse Virgo
Modularidade na Web com Java: Desenvolvimento OSGI Web com Eclipse Virgo
 
Palestra Sobre REST
Palestra Sobre RESTPalestra Sobre REST
Palestra Sobre REST
 
Novidades do JAX-RS 2.0
Novidades do JAX-RS 2.0Novidades do JAX-RS 2.0
Novidades do JAX-RS 2.0
 
Web Sphere
Web SphereWeb Sphere
Web Sphere
 
JBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRJBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BR
 
Introdução à Servlets e JSP
Introdução à Servlets e JSPIntrodução à Servlets e JSP
Introdução à Servlets e JSP
 
JBoss Clustering
JBoss ClusteringJBoss Clustering
JBoss Clustering
 
Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007
 
Trabalho Final PSDC - Simião
Trabalho Final PSDC - SimiãoTrabalho Final PSDC - Simião
Trabalho Final PSDC - Simião
 
Java web
Java webJava web
Java web
 
Desenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EEDesenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EE
 
Curso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web ApplicationCurso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web Application
 
Estudos Technocorp
Estudos TechnocorpEstudos Technocorp
Estudos Technocorp
 
Implementação de Sockets em JAVA
Implementação de Sockets em JAVAImplementação de Sockets em JAVA
Implementação de Sockets em JAVA
 
JavaEE 7, na era do cloud computing
JavaEE 7, na era do cloud computingJavaEE 7, na era do cloud computing
JavaEE 7, na era do cloud computing
 
Framework struts2v2.5
Framework struts2v2.5Framework struts2v2.5
Framework struts2v2.5
 
Java Seminar
Java SeminarJava Seminar
Java Seminar
 
Apostila: Curso de java III
Apostila: Curso de java IIIApostila: Curso de java III
Apostila: Curso de java III
 

Kürzlich hochgeladen

Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfTutor de matemática Ícaro
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesFabianeMartins35
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxLuizHenriquedeAlmeid6
 
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOFASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOAulasgravadas3
 
INTERVENÇÃO PARÁ - Formação de Professor
INTERVENÇÃO PARÁ - Formação de ProfessorINTERVENÇÃO PARÁ - Formação de Professor
INTERVENÇÃO PARÁ - Formação de ProfessorEdvanirCosta
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfFrancisco Márcio Bezerra Oliveira
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxferreirapriscilla84
 
Historia da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdfHistoria da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdfEmanuel Pio
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfCamillaBrito19
 
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....LuizHenriquedeAlmeid6
 
Introdução a Caminhada do Interior......
Introdução a Caminhada do Interior......Introdução a Caminhada do Interior......
Introdução a Caminhada do Interior......suporte24hcamin
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...IsabelPereira2010
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)ElliotFerreira
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfmaurocesarpaesalmeid
 
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESCOMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESEduardaReis50
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Ilda Bicacro
 
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇJaineCarolaineLima
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 

Kürzlich hochgeladen (20)

Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividades
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOFASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
 
INTERVENÇÃO PARÁ - Formação de Professor
INTERVENÇÃO PARÁ - Formação de ProfessorINTERVENÇÃO PARÁ - Formação de Professor
INTERVENÇÃO PARÁ - Formação de Professor
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptx
 
Historia da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdfHistoria da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdf
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdf
 
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
 
Introdução a Caminhada do Interior......
Introdução a Caminhada do Interior......Introdução a Caminhada do Interior......
Introdução a Caminhada do Interior......
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
 
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESCOMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 

Apresentação Java, SOA, MICROSERVICE, HTTP, HTTPS, VERSIONAMENTO DE CONTRATO,

  • 1. Perguntas Apresentação Anterior - Pop e remove qual a diferença ? Pop retorna o objeto, remove um booleano. - Variaveis atomicas no syncronized ? São variaveis thread-safe, trabalham com dois parametros(atual valor,novo valor) sempre apos um set fazem um get. - Daemon Thread o que e como funciona ? Daemon threads são interrompidas quando a thread principal, servem as threads user.(GC) - Como funciona a comparação em java ? Com “==” compara a referencia do objeto, para comparar se um objeto tem os mesmos atributos deve-se sobreescrever o equals e hash - Como a jvm trabalha com threads ? as threads são escalonadas de forma preemptiva seguindo a metodologia “round-robin”. Isso quer dizer que o escalonador pode pausá-las e dar espaço e tempo para outra thread ser executada.
  • 2. Java 8 – Interfaces Funcionais Exemplo: #Somente um metodo abstrato. #Instanciação em classe anonima. #Possibilita o uso de lambda. Thread implementa Runable esta tendo apenas run();
  • 3. Java 8 – Streams(JEP 107) Reduzir a preocupação do desenvolvedor com a forma de implementar controle de fluxo ao lidar com coleções, deixando isso a cargo da API. Motivo:
  • 4. Java 8 – Streams(JEP 107) Exemplo De Uso
  • 5. Java 8 – Metodos Default Interface Iterable metodo forEach implementado Default.
  • 6. Java 8 – Metodos Default Java 7 – Metodos eram declarados nas interfaces e tinham que ser implementados na classe que a utilizava. Java 8 – Metodos default permitem ser implementados na interfaces fazendo com que não há a necessidade da classe abaixo implementa-lo. E ainda podem ser sobrescritos. Facilita a manutenção, caso necessite alterar a interface não será necessario alterar quem a implementa.
  • 7. Java 9 – Java Modular(Jigsaw JEP 200;376) #Modularizar o jdk #Permitir o desenvolvimento de aplicações modulares. #isolar as bibliotecas de terceiros #melhorar o encapsulamento e fugir do famoso jarHell. Motivação :
  • 8. Java 9 – Java Modular(Jigsaw JEP 200;376) Estrutura java 9
  • 9. Java 9 – Java Modular(Jigsaw JEP 200;376) EXEMPLO ARQUIVO MODULE-INFO Exports: Para poder importar um pacote de outro modulo primeiro deve exporta-lo. Requires: Adiciona uma dependencia ao pacote solicitado. Caso seja declarado como static ele se torna opcional em tempo de execução.
  • 10. Java 9 – Java Modular(Jigsaw JEP 200;376) Modularizado: #O que não era necessario importação continua dessa forma (fazem parte do modulo principal). #Encapsulamento mais forte. #redução e explicitação de dependencias entre componentes. #não teremos mais de uma versão da mesma classe em runtime(ResolutionException) assim evitando jarhell.
  • 11. Java 9 – Java REPL(Jshell JEP222) Read-Evaluate-Print-Loop(REPL) – Fornece algo ao console e é processado automaticamente.
  • 12. Java 9 – Java REPL(Jshell JEP222) Detalhes : #Jshell necessita dos imports eternos tambem.(Shift+Tab+i) . #Pode usar classes locais criadas pelo usuario. Vantagens : Principal vantagem no uso do jshell é não ter a necessidade de criar todo o projeto para testar algo simples...modificando muito a forma de se aprender java.
  • 13. Java 10 – Local-Variable Type Inference (JEP286) Var : Java 9 Java 10
  • 14. Java 10 – Local-Variable Type Inference (JEP286) #Somente variáveis locais com inicializadores. #Não funciona com retorno de metodo nem com lambda.
  • 15. Java 10 – Garbage Collector Interface(JEP 304) Antes : Codigo utilizados pelos GC’s espalhados pelo jdk. Depois: Interface controlando os GC’s assim facilitando a evolução dos mesmos e criação de novos, alem de organizar o codigo dos mesmos. Tornar mais fácil excluir um GC de uma compilação do JDK A interface do GC pela classe existente CollectedHeap, que todo GC precisa implementar. Conduziria a maioria dos aspectos de interação entre o GC e o restante do HotSpot
  • 16. Java 11 - Local-Variable Syntax for Lambda Parameters(JEP 323) Permite a inferência de tipos para variáveis locais em expressões lambda. Todas as veriaveis(var); Utilidade: Exemplo:
  • 17. Java 11 - Local-Variable Syntax for Lambda Parameters(JEP 323) Vantagem : #ajudam a reduzir o número de erros no código. #O compilador pode emitir alertas ao concluir que o código não atende a certos requerimentos. Exemplo de Erro:
  • 18. Programas de arquivo único - em que todo o programa se encaixa em um único arquivo de origem - são comuns nos estágios iniciais de aprendizado do Java. Famoso HelloWorld.java. Por exemplo, se um arquivo chamado HelloWorld.java contém uma classe chamada hello.World, então o comando abaixo vai compilar e executar o HelloWorld java HelloWorld.java. Java 11 - Launch Single-File Source-Code Programs(JEP 330)
  • 19. Protocolo HTTP HyperText Transfer Protocol ● ​​​​permite a comunicação entre clientes(User-agent) e servidores através da internet. ● Request = requisição. ● Response = resposta.
  • 20. Protocolo HTTP GET: #Exemplo de GET no java: #Mensagem referente a solicitação: #Resposta da solicitação:
  • 21. Protocolo HTTP POST: #Exemplo de POST no java: #Mensagem referente a solicitação: #Resposta da solicitação:
  • 23. Protocolo HTTP ● GET Solicita a representação de um determinado recurso. ● POST As informações enviadas no corpo (body) da requisição são utilizadas para criar um novo recurso. ● PUT Atualiza um recurso na URI especificada. Caso o recurso não exista, ele pode criar um.. ● DELETE O método DELETE remove um recurso específico. Metodos (Verbos HTTP).
  • 24. Protocolo HTTP ● OPTIONS É utilizado para que um cliente possa descobrir quais as opções de requisição permitidas para um determinado recurso em um servidor. ● CONNECT Serve para uso com um proxy que possa se tornar um túnel SSL (um túnel pode ser usado, por exemplo, para criar uma conexão segura). ● TRACE Devolve a mesma requisição que for enviada veja se houve mudança e/ou adições feitas por servidores intermediários. ● HEAD O método HEAD solicita uma resposta de forma idêntica ao método GET, porém sem conter o corpo da resposta. Metodos (Verbos HTTP).
  • 25. Protocolo HTTP – STATUS Status: 200 OK A requisição foi bem sucedida. 301 Moved Permanently O recurso foi movido permanentemente para outra URI. 302 Found O recurso foi movido temporariamente para outra URI. 304 Not Modified O recurso não foi alterado. 401 Unauthorized A URI especificada exige autenticação do cliente. O cliente pode tentar fazer novas requisições. 403 Forbidden O servidor entende a requisição, mas se recusa em atendê-la. O cliente não deve tentar fazer uma nova requisição. 404 Not Found O servidor não encontrou nenhuma URI correspondente. 405 Method Not Allowed O método especificado na requisição não é válido na URI. A resposta deve incluir um cabeçalho Allow com uma lista dos métodos aceitos. 410 Gone O recurso solicitado está indisponível mas seu endereço atual não é conhecido. 500 Internal Server Error O servidor não foi capaz de concluir a requisição devido a um erro inesperado. 502 Bad Gateway O servidor, enquanto agindo como proxy ou gateway, recebeu uma resposta inválida do servidor upstream a que fez uma requisição. 503 Service Unavailable O servidor não é capaz de processar a requisição pois está temporariamente indisponível.
  • 26. Protocolo HTTP2 ● Fluxos multiplexados - capacidade de dividir uma mensagem HTTP em frames independentes; ● Server Push - pode mandar alguns recursos para o navegador sem ele mesmo ter requisitado ainda; ● Headers HPACK - os headers são binários e comprimidos usando um algoritmo chamado HPACK ● Prioridades e dependências - priorizar os recursos necessários para o usuário começar a ver a página e interagir e deixar coisas secundárias pra depois; novidades do HTTP 2.0
  • 27. Protocolo HTTPS HTTPS – Conexão segura. incluem a chave SSL de 2048 bits e podem proteger uma conexão de site por meio de autenticação e criptografia.
  • 28. SOA X MICROSERVICES Serviços ● é uma unidade de software que executa uma função de negócio; ● Contrato definido:(entrada, saída, restrições, comportamentos…); ● Consumidor não tem acesso a detalhes de implementação; ● Auto contido,independente e modular; ● Pode reutilizar em outros contextos; ● Realiza uma função integralmente; ● Pode ser usado e administrado individualmente; ● Pode ser combinado com outros serviços;
  • 30. SOA X MICROSERVICES Exemplo ESB Midleware:(SOA)
  • 31. SOA X MICROSERVICES Diferenças: Granularidade de serviço : - Serviços dentro de MICROSERVICES geralmente tem proposito único - SOA podem variar o tamanho, é comum ter um serviço representando um produto grande ou subsistema. Compartilhamento de componentes : SOA usa muito compartilhamento de serviços, O SOA aprimora o compartilhamento de componentes, enquanto o MICROSERVICE tenta minimizar o compartilhamento por meio de “contexto limitado”. Os sistemas construídos em SOA provavelmente serão mais lentos que a MICROSERVICE.
  • 32. SOA X MICROSERVICES Serviços remotos : arquiteturas SOA dependem de mensagens (AMQP, MSMQ) e SOAP como protocolos de acesso remoto primário. A maioria dos MICROSERVICES conta com dois protocolos - REST e mensagens simples (JMS, MSMQ), e o protocolo encontrado no MICROSERVICES é geralmente homogêneo. Interoperabilidade heterogênea : SOA promove a propagação de múltiplos protocolos heterogêneos através de seu componente de middleware(ex: zato)de mensagens. O MICROSERVICES tenta simplificar o padrão de arquitetura reduzindo o número de opções para integração. Se necessário vários sistemas usando diferentes protocolos em um ambiente heterogêneo, deve considerar a SOA. Se todos os seus serviços pudessem ser expostos e acessados através do mesmo protocolo de acesso remoto, o​​ MICROSERVICES seria uma opção melhor.
  • 33. SOA X MICROSERVICES MICROSERVICES, são mais adequados para sistemas menores e bem particionados, baseados na web, nos quais os microsserviços oferecem um controle muito maior como desenvolvedor. Quando Usar: SOA é mais adequada para ambientes de aplicativos de negócios grandes e complexos que exigem integração com muitos aplicativos heterogêneos, ou seja, aplicativos menores não são adequados para SOA, pois não precisam de um componente de middleware de sistema de mensagens.
  • 36. SOA X MICROSERVICES MICROSERVICES grafico “DEATH STAR”
  • 37. VERSIONAMENTO DE CONTRATO Versionamento de api’s serve basicamente para não termos quebra de contrato entre api e seus clientes. - Versionamento pela URL. - Versionamento pelo Header.
  • 38. VERSIONAMENTO DE CONTRATO URL Endpoint: subdomínio, path ou query string. ● Subdominio https://api-v1.minhaApi/users. Quem for consumir pode alterar apenas o subdomínio na requisição. ● Path https://api.minhaApi/v1/users. abordagens mais utilizadas, pois além de dar um visual mais clean na URL, facilita a navegação para outras versões da API,
  • 39. VERSIONAMENTO DE CONTRATO ● query string: https://api.minhaApi/user/?version=1. caiu em desuso, pois além de prejudicar a navegação para outras versões, a legibilidade da URL fica ruim em cenários de muitos parâmetros na query string. HEADER:Accept,header customizado ● Accept: HTTP GET https://api.minhaApi/user Accept: application/vnd.minhaApi.v2+json via HTTP content-type.
  • 40. VERSIONAMENTO DE CONTRATO ● Header Customizado: HTTP GET https://api.minhaApi/user Api-version: 2 O ponto positivo sua URL permanece intacta, ponto negativo a requisição tem que ser feita com muito mais cuidado.