InovaçãoAPI

Veja como as APIs facilitam a vida do desenvolvedor

Se você é um desenvolvedor de sistemas, provavelmente está sempre correndo contra o tempo. Afinal, é uma das peças fundamentais no atual processo de transformação digital que o mundo está vivendo, desenvolvendo, por exemplo, soluções para o mercado de seguros.

Pois saiba que você sempre pode ganhar tempo se souber contar com a melhores amigas do desenvolvedor: as APIs, sigla para Application Programming Interface (em português, Interface de Programação de Aplicativos).

Se você é um profissional dessa área e ainda não está explorando ao máximo o mundo das APIs, precisa ler essa entrevista com o dev Raul Sóla.

Raúl integrou a equipe técnica de pagamentos digitais da Gr1d e compartilha aqui um pouco de sua experiência com APIs e como chegou à conclusão de que “o bom desenvolvedor não é aquele que faz um programa para executar determinada tarefa. É aquele que procura uma API que faça essa tarefa por ele.”

Quem é o dev?

Raúl Sola é espanhol, radicado no Brasil há cerca de 12 anos, formado em Ciência da Computação e com experiência de 15 anos como desenvolvedor. A maior parte desse tempo, atuou no desenvolvimento de sistemas relacionados a transações financeiras.

Qual a importância das APIs para o seu trabalho?

Para qualquer desenvolvedor, as APIs são essenciais. Vieram para facilitar o trabalho de todo mundo. E basicamente, também, a gente trabalha construindo APIs.

O bom das APIs é ainda a integração do trabalho. A gente, como desenvolvedor, muitas vezes, trabalha distribuído em equipes. Então, cada equipe desenvolve APIs que vão se integrar com outras interfaces, desenvolvidas pelas demais equipes dentro da empresa.

A gente pode dizer que as APIs são blocos de construção e o que o desenvolvedor faz é integrar os blocos para chegar a um objetivo específico.

Você também constrói APIs? Como é feito esse trabalho de construção?

A API basicamente é um programa que disponibiliza uma interface que vai ser usada por outros programas para realizar uma integração. É bem comum que um desenvolvedor também crie APIs. Hoje, no desenvolvimento de sistemas, não existe mais aquele programa que faz tudo. A gente constrói pequenos programas que fazem tarefas específicas. São blocos, cada um para uma tarefa, e que se juntam com outros blocos para fazer uma tarefa maior, integrada.

A gente desenvolve o programa, cria uma interface, que é a API, com sua documentação para uso, e outros programas vão saber como se comunicar com esse por meio da interface.

"Hoje, no desenvolvimento de sistemas, não existe mais aquele programa que faz tudo. A gente faz pequenos programas que fazem tarefas específicas.” - Raúl Sola

Quais são os principais problemas que você enfrenta no dia a dia?

O trabalho do desenvolvedor é resolver problemas. Problemas que o cliente precisa que você resolva. As APIs são a chave para isso. Por exemplo, o cliente precisa mostrar um mapa com a localização do seu negócio. Tem uma API do Google que faz isso. O cliente precisa gerar uma fatura. Tem APIs que fazem isso. Precisa realizar uma cobrança via cartão de crédito? Diversas APIs fazem isso.

E como você costuma resolvê-los com a ajuda das APIs?

Não precisa criar um programa que faça tarefa por tarefa, você cria um sistema que usa as APIs para resolver esses problemas específicos. Na maioria das vezes, você vai encontrar uma API que vai resolver o seu problema.

Então, podemos dizer que uma API é sua melhor amiga?

Sim (risos), a API sempre ajuda. Quando você tem que resolver um problema específico para um cliente, o bom desenvolvedor não é aquele que faz um programa para executar aquela tarefa. É aquele que procura uma API que faça essa tarefa por ele. A gente não precisa reinventar a roda. Só precisa pegar a roda e utilizá-la.

O bom desenvolvedor não é aquele que faz um programa para executar aquela tarefa. É aquele que procura uma API que faça essa tarefa por ele.” - Raúl Sola

Quais APIs você mais utiliza?

Como eu trabalho mais com captura e processamento de transações financeiras, a gente costuma usar muito API de cobrança via cartão de crédito, por exemplo. Também costumo utilizar APIs de envio de e-mail.

Existem muitas outras bem comuns, como a de geolocalização, que o Google disponibiliza, e as de login integrado, que são aquelas em que você cria o login para a sua aplicação usando a conta do Facebook ou do Google.

Tem alguma história de uma API que tenha feito uma incrível diferença num sistema?

Teve um trabalho que eu precisei realizar, de gerar notas fiscais. O Brasil é um país gigante e cada estado cuida da sua receita e da sua geração de notas fiscais, sem integração entre si. O problema é quando você precisa utilizar um sistema que tenha integração com todas as notas fiscais do Brasil. Seria um trabalho multiplicado por cada estado do Brasil.

É uma coisa que um desenvolvedor consegue fazer, mas vai ser muito custoso. Então, em vez de nos preocuparmos com o desenvolvimento desse sistema, procuramos APIs que disponibilizassem o serviço, e encontramos. Existe uma empresa que disponibiliza essa API.

Há um valor de utilização (nem todas as APIs são gratuitas). Mas o custo de uso de uma API desse nível é bem mais barato do que o custo para desenvolver esse sistema, principalmente quando seu cliente tem urgência.

Com a API, em dois dias, estava pronto o sistema de nota fiscal. Se fosse fazer o desenvolvimento completo, iria demorar talvez um ano, dependendo da quantidade de desenvolvedores envolvidos.

Como seria o seu trabalho sem as APIs?

A API nasceu graças à comunicação via internet. Antes das APIs, o sistema precisava fazer tudo e o desenvolvedor precisava desenvolver tudo. O impacto seria bem grande sem APIs. Seria bem trabalhoso para o desenvolvedor, porque teria que implementar cada função. Tomaria mais tempo e geraria mais custos.

Qual a importância de uma boa documentação de APIs?

Quando se tratam de APIs internas, de programas desenvolvidos dentro da mesma empresa, não é tão crítico ter uma boa documentação, porque você tem mais facilidade para falar com os desenvolvedores que fizeram aquele sistema. Mas quando você precisa usar uma API externa, de uma empresa que você não tem relacionamento direto, é bem importante ter uma boa documentação.

Isso porque, se a documentação tiver problemas ou falta de informações de uso, vai ser bem frustrante para o desenvolvedor. Pois, na hora em que ele for tentar integrar seu sistema com aquela API, vai ter falhas na troca de informação. O essencial para você conseguir usar uma API é uma boa documentação.

“Se a documentação (da API) tiver problemas ou falta de informações de uso, vai ser bem frustrante para o desenvolvedor.” - Raúl Sola

Qual a importância das plataformas de APIs?

É algo que facilita. Por exemplo, a gente tem sempre o trabalho de encontrar a API. Procura, procura e demora para encontrar. Então, ter uma plataforma que reúne todas as APIs é uma coisa maravilhosa. Você não precisa procurar na internet, usar várias que parecem que vão resolver, mas não resolvem, ou porque têm uma falha ou porque não são exatamente o que você precisa.

“Tendo uma plataforma, você sabe que está tudo lá concentrado. É uma maravilha. Uma ideia muito boa.” - Raúl Sola

Como você já percebeu nessa entrevista, as APIs facilitam muito a vida do desenvolvedor. Significam ganho de tempo e economia de recursos, o que é tudo que o cliente de um sistema deseja. É por isso que esse tipo solução tem que fazer parte da sua caixa de ferramentas. Basta explorar o universo de APIs e tirar o melhor proveito de todas as funcionalidades que elas oferecem.

Para saber mais sobre este e outros temas relevantes para o seu trabalho, você pode sempre contar com o Trends.