-
Quando a gente começa a desenvolver
aplicações cada vez mais complexas
-
e, ao mesmo tempo,
desacopladas,
-
um grande problema surge:
-
"como eu vou fazer
para elas conversarem?"
-
Se antes a gente tinha soluções
como a SB,
-
que centralizava tudo
-
e terminava levando a gente
de volta para os monolitos,
-
a gente terminou precisando
adotar novas soluções
-
quando passamos a utilizar
outras arquiteturas.
-
E aqui que começa a brilhar a API,
-
a interface de aplicação programável.
-
As APIs são essencialmente uma ponte
que conecta um serviço a outro,
-
mas justamente para isso
ela vai ter algumas premissas.
-
A primeira delas é que eu saiba
como interagir.
-
E, justamente por isso,
ao longo dos anos,
-
a gente começou a focar
em métodos de comunicação
-
mais padronizados,
como, por exemplo, o HTTP
-
ou utilização de dados em JSON.
-
Basicamente,
estruturas que eram textos,
-
que a gente conseguia separar ali
características e variáveis
-
e que eu pudesse sempre mandar
pré-formatado
-
de um lugar para outro.
-
Foi justamente
assim que as APIs resolveram
-
um dos principais problemas
da arquitetura de microsserviços.
-
Quando eu passo a simplificar
a comunicação
-
e a reduzir o tempo
de desenvolvimento.
-
Algo que a gente não esperava.
-
A ideia aqui é justamente
que a comunicação
-
será sempre por um meio padronizado
-
e esse meio vai poder utilizar
uma série de estruturas de dados,
-
que vão garantir que eu troque dados
e simplifique muito o desenvolvimento.
-
Se você está pensando
que isso é algo fora do comum,
-
eu te garanto que pelo -1 serviço
com microsserviços você usou hoje
-
que estava utilizando uma API
por trás.
-
Afinal de contas,
toda vez que a gente acessa
-
uma página de internet, algo muito
parecido com isso está acontecendo.
-
Se eu solicito uma página web
-
e faço um gate do HTTP
-
dentro de um serviço, na prática
eu estou consumindo uma API
-
que me fornece de volta
a página que eu tenho que acessar.
-
Foi justamente por isso
que a API começou um casamento
-
lindo e maravilhoso,
com diversos métodos de arquitetura
-
que perduram
e vão perdurar por muito tempo.
-
E é justamente por isso
que ela se torna uma chave crucial
-
para o desenvolvimento de aplicações
modernas,
-
permitindo que eu
simplifique a comunicação
-
ao mesmo tempo
que eu consigo fazer soluções
-
cada vez mais complexas,
distribuídas e desacoplado às.