DEV Community

Yuri Peixinho
Yuri Peixinho

Posted on

APIs (Application Interface Programming)

Introdução

Uma API é a interface que uma aplicação de software apresenta a outras aplicações.

As APIs são os blocos de construção que permitem a interoperabilidade para as principais plataformas de negócios na web.

As APIs permitem que identidades sejam criadas e mantidas em contas de software em nuvem, desde seu endereço de e-mail corporativo, a software de design colaborativo.

  • Habilitam os compartilhamento de dados de previsão do tempo para aplicações
  • Processam seus cartões de créditos e permitem que as empresas recebem seus dinheiro sem preocupações regulatórias

APIs simplificam o uso de outro softwares

bd3a18c-8cfd-4e32-80bd-65306503eb1d:image.png)

Para enviar uma mensagem de WhatsApp via código, por exemplo, o desenvolvedor não precisa entender como os servidores da Meta funcionam, nem como a criptografia de ponta a ponta é processada matematicamente. Ele só precisa se comunicar com a API do serviço de mensagens.

Isso garante duas grandes vantagens:

  • Foco no Produto: Empresas ganham agilidade ao integrar soluções já prontas (como mapas, pagamentos e envios de e-mail) em vez de "reinventar a roda".
  • Independência de Linguagem: Uma API bem construída não se importa se o seu aplicativo foi programado em Python, Java, PHP ou Node.js. Desde que a mensagem seja enviada no padrão correto, a comunicação acontece.

Tipos de APIs

Nem toda API tem a mesma funcionalidade e propósito. O desenvolvedor deve saber qual o propósito ao construir e resusar a API.

APIs para Soluções Móveis

  • O número de dispositivos móveis e tablets superou o número de computadores. Os aplicativos para celular são diferentes dos aplicativos de desktop tradicion

ais, já que a maioria dos aplicativos móveis não é autônoma nem autossuficiente.

  • Os aplicativos precisam se conectar aos servidores na Internet para serem utilizáveis ou, pelo menos, serem utilizáveis em todo o seu potencial.
  • Os dados entregues pelas APIs precisam ser leves e particionados. Isso garante que a API possa ser consumida por dispositivos com capacidade de processamento limitada e largura de banda limitada de conexão à Internet.

APIs para Soluções de Nuvem

  • As soluções em nuvem SaaS normalmente consistem em um aplicativo da Web e APIs. O aplicativo da web é visível para os consumidores.
  • Embaixo do capô, as soluções em nuvem geralmente oferecem uma API também, no entanto, a API normalmente permanece sob a superfície. Essa API pode ser usada para conectar o aplicativo de nuvem a outros aplicativos de nuvem para realizar a automação ou para conectar a solução de nuvem a aplicativos móveis e software de desktop.
  • O Dropbox é um exemplo para esse tipo de solução em nuvem. A API desta solução de nuvem permite que muitos aplicativos de terceiros se conectem ao Dropbox, incluindo ferramentas de sincronização para dispositivos móveis e desktop.

APIs para Soluções de Integração

  • APIs fornecem os recursos, que são essenciais para conectar, estender e integrar software. Ao integrar software, as APIs conectam empresas a outras empresas. Eles são usados em soluções de integração de negócios para empresas.
  • O negócio de uma empresa pode ser expandido conectando-se os negócios aos parceiros para cima e para baixo na cadeia de valor.
  • Como os negócios são executados pela TI, os negócios podem ser mais bem vinculados, integrando os sistemas de TI de um negócio em toda a cadeia de valor aos sistemas de TI de outras empresas, parceiros, funcionários e, é claro, aos clientes.

APIs para Soluções Multi-Canal

  • Sistemas diversos oferecem aos clientes a possibilidade de fazer compras em várias plataformas: no celular, na Web ou no tablet.
  • Para melhorar a experiência de uso, os mesmos dados e ações do usuário precisam estar disponíveis em todos os dispositivos do usuário, mesmo que sejam construídos em hardware diferente, executem sistemas operacionais diferentes e aplicativos diferentes.
  • Soluções Omni-Canal ou soluções multicanais fornecem exatamente isso. Independentemente do canal usado pelos clientes, eles obtêm uma experiência consistente em todos os dispositivos e podem alternar facilmente entre os dispositivos.

APIs para Soluções IoT

  • A internet das coisas é composta de dispositivos físicos com uma conexão à internet.
  • Os dispositivos são controlados por software por meio de seus atores ou os dispositivos podem coletar dados por meio de seus sensores.
  • Assim, o dispositivo em si não precisa ser "inteligente", no entanto, ele pode se comportar como um dispositivo inteligente.

A Agenda do arquiteto para APIs

  • Como identificar, escolher e desenhar APIs?
  • Como implementar e testar APIs?
  • Como documentar e comunicar APIs?
  • Como definir tecnologias de APIs?
  • Como gerenciar APIs?
  • Como descobrir e reusar APIs?

O processo de construção de APIs

  1. Descobrimos como a maioria dos consumidores gostaria de usar a nova API.
  2. Projetamos a API para que ela se encaixe no portfólio de diferentes APIs que nossa empresa oferece.
  3. Escolhemos o estilo arquitetônico, ou seja, se a API aplica um estilo REST, RPC, SOAP, WebSocket, entre outros.
  4. Projetamos um protótipo da API usando uma linguagem de descrição da API, como RAML ou Open API (Swagger).
  5. Simulamos a API e criamos um protótipo da API.
  6. Selecionamos a plataforma da API, que fornece os blocos de construção reutilizáveis para as APIs.
  7. Implementamos e testamos a API, uma pedaço por vez.
  8. Implantamos e gerenciamos a API em ambiente de produção
  9. Aumentamos o engajamento para descoberta e uso das APIs criadas.

Ciclo de Vida de APIs com Plataformas

Top comments (0)