Background Image
Table of Contents Table of Contents
Previous Page  20 / 68 Next Page
Information
Show Menu
Previous Page 20 / 68 Next Page
Page Background

O

surgimento das APIs revolucionou a

forma como acessamos dados no universo

da computação. A partir de então, foi

possível ter acesso remoto a qualquer

dado, independentemente de onde estivesse

armazenado. Hoje, ninguém precisa fazer uma cópia

dos dados do Facebook ou do Google Maps para ter os

mesmos dados que esses serviços possuem. Basta ter

acesso a uma API que entregue os dados na medida

em que são solicitados.

Ao mesmo tempo, o RESTFULL nos libertou do

“jardim murado” das tecnologias proprietárias,

permitindo que utilizássemos a melhor tecnologia

para determinado fim, o que fez “florescer” a

utilização de bancos de dados não relacionais. A

solução simples encontrada pelo

REST foi utilizar um protocolo verdadeiramente

universal – o HTTP – e um modelo de organização

lógica que é intuitivo e fácil de aprender.

Porém, o REST já começou a demonstrar sua

idade, na medida em que é cada vez maior o número

de dispositivos e sistemas que precisam consumir e

gravar dados por meio de APIs. Um dos problemas

mais comuns é a necessidade de executar múltiplas

chamadas à API para ter acesso a todos os dados que

são necessários para uma tarefa específica. Leve em

consideração o seguinte exemplo:

• uma chamada a user/:id retorna os dados relativos

ao usuário id como nome, e-mail, idade, etc.;

• uma chamada a user/:id/friends traz a

lista com os nomes e ids de todos os amigos

conectados ao usuário: id

Se eu, por acaso, quiser saber a média de idade

dos amigos de determinado usuário, precisarei fazer 1

chamada para buscar a listagem de amigos dele e mais

1 chamada para cada amigo nessa lista. No mínimo,

deveria haver uma forma mais fácil de

fazer algo do tipo.

Projetos como o Falcor e GraphQL, lançados

como “software livre” pela Netflix e pelo Facebook,

respectivamente, têm como objetivo resolver

justamente esse e outros problemas de acesso remoto

aos dados por meio de APIs.

Em ambos os casos, trata-se de um serviço que se

conecta diretamente a uma ou mais fontes de dados,

gerando um grafo e possibilitando que determinada

requisição solicite ao servidor apenas os dados dos

quais necessita.

Dentre outros cenários, projetos como esses

parecemmuito úteis no ambiente de microsserviços.

Imagine um cenário com um cliente web e diferentes

clientes mobile, e cada um deles precisa de uma versão

levemente diferente dos dados para compor a interface

que será apresentada para o usuário. Como cada um

dos clientes vai solicitar ao servidor exatamente aquilo

de que necessita, fica muito mais fácil manter e evoluir

a API sem que seja preciso utilizar diferentes versões,

mesmo que as necessidades mudem no futuro.

Kemel Zaidan

Evangelista de tecnologia

da Locaweb

@kemelzaidan

/kemelzaidan

O RESTFULL

está morto?

influenciador

20

20

REVISTA LOCAWEB

REVISTA LOCAWEB