O documento discute APIs, REST e arquitetura RESTful. Explica que APIs permitem a integração entre sistemas e microserviços estruturam soluções como coleções de serviços levemente acoplados. REST é um estilo de projetar aplicativos da Web fracamente acoplados usando recursos nomeados e métodos HTTP padronizados. Arquitetura RESTful significa que uma aplicação web segue os princípios de design REST.
2. Olá!
Eu sou Marcos
Echevarria
▹ Natural de Pelotas
▹ CEO e Head do time de desenvolvimento
▹ Professor universitário há mais de 10 anos
▹ Aos poucos retribuindo à comunidade
2
4. O que é?
API ou “Application Programming Interface”, é uma forma
de integrar sistemas, possibilitando benefícios como a
segurança dos dados, facilidade no intercâmbio entre
informações com diferentes linguagens de programação,
entre outras.
Elas proporcionam a integração entre sistemas que
possuem linguagem totalmente distintas de maneira ágil.
Esta interface permite a construção de aplicativos e a sua
utilização de maneira não tão evidente para os usuários.
8. O que é?
Microservices, também conhecido como arquitetura de
microserviços, é um estilo arquitetônico que estrutura
uma solução como uma coleção de serviços ligeiramente
acoplados, que implementam capacidades empresariais.
A arquitetura microservice permite a entrega e a
implantação contínua de aplicativos grandes e
complexos.
Ele também permite que uma organização evolua sua
pilha de tecnologia.
14. O que é REST?
REST é um estilo de se projetar aplicativos da Web
fracamente acoplados que contam com recursos
nomeados e não com mensagens.
Engenhosamente, o REST transporta a
infraestrutura já validada e bem-sucedida da Web
— HTTP e alavanca aspectos do protocolo como
pedidos GET e POST.
15. Um pouco de história
O termo REST foi definido por Roy T. Fielding em sua
tese de PhD.
Roy foi um dos principais desenvolvedores de muitos
dos protocolos Web essenciais, incluindo HTTP e
URIs, e ele formalizou várias das idéias por trás deles
nesse documento.
A dissertação é considerada “A Bíblia do REST”.
18. URIs e recursos
Quando fazemos requisições Web, precisamos falar
o caminho da mesma, a URI (Unified Resource
Identifier), ou seja, o identificador único de um
recurso.
Então ao criar as URIs do nosso sistema devemos
levar em conta que elas representam recursos, não
ações.
20. Operações e métodos
O importante no
REST é que você
tenha um conjunto
pequeno e fixo de
operações bem
definidas.
Isso gera uma
interface uniforme.
O protocolo HTTP
possui sete métodos:
▸ GET
▸ POST
▸ PUT
▸ DELETE
▸ HEAD
▸ OPTIONS
▸ TRACE
22. REST - Princípios fundamentais
▸ Dê a todas as coisas um Identificador
▸ Vincule as coisas
▸ Utilize métodos padronizados
▸ Recursos com múltiplas representações
▸ Comunique sem estado
Vamos utilizar um recurso Cliente.
23. Nomeando nossos recursos
GET: {API_HOST}/cliente
GET: {API_HOST}/cliente/33
POST: {API_HOST}/cliente
PUT: {API_HOST}/cliente/33
DELETE: {API_HOST}/cliente/{id}
Lendo uma lista de clientes
Lendo um cliente específico
Criando um cliente
Atualizando um cliente
Removendo um cliente
26. O que é?
RESTful é a capacidade de um serviço web fazer REST.
Quando criamos uma aplicação web com base na
arquitetura REST, podemos dizer que nossa aplicação é
RESTful.
É mais questão de nomenclatura.