API ou (Application Programming Interface), traduzindo para o português quer dizer (Interface de Programação de Aplicações), é um conjunto de funções e procedimentos que permitem a integração de sistemas, permitindo a reutilização das suas funcionalidades por outras aplicações ou software.
API é utilizada para trocar dados entre diferentes tipos de software a fim de automatizar procedimentos e desenvolver novas funcionalidades.
API é uma espécie de ponte que liga diferentes tipos de software ou aplicações e pode ser criada em várias linguagens de programação.
Uma API deve ter uma documentação clara e objetiva para facilitar a sua implementação.
É frequentemente utilizado um formato de dados predefinido para compartilhar informação entre sistemas, com o objetivo de obter a integração entre eles.
Os mais usados são XML (Extensible Markup Language), YAML (originalmente Yet Another Markup Language, mas oficialmente YAML Ain’t Markup Language) e JSON (JavaScript Object Notation) para as aplicações web.
Existe também um padrão nas APIs web chamado REST (Representational State Transfer), que é um conjunto de regras e definições que permite o desenvolvimento de projetos com interfaces bem definidas.
Tipos de APIs:
Existem basicamente quatro tipos de APIs considerando suas políticas de compartilhamento e segundo suas políticas de uso.
1 - APIs públicas.
As APIs públicas são também conhecidas como APIs abertas e estão disponíveis para outros usuários ou programadores utilizarem com restrições mínimas ou, em alguns casos, de forma totalmente acessível.
2 - APIs privadas.
As APIs privadas ou internas são ocultadas aos usuários externos e são expostas apenas para os sistemas internos de uma organização.
São utilizadas para o desenvolvimento interno da empresa, otimizando a produtividade e a reutilização dos serviços.
3 - APIs de parceiros de negócio.
As APIs de parceiros comerciais são aquelas que são expostas entre os membros de um acordo comercial.
Uma vez que não estão disponíveis para todos, é necessária uma autorização especial para sua utilização.
4 - APIs compostas.
As APIs compostas utilizam diferentes dados ou APIs de serviços e permitem aos programadores acessar múltiplos pontos finais.
Também podem ser divididas em quatro de acordo com o que oferecem ou com seus casos de uso:
1 - APIs de dados.
As APIs de dados fornecem a vários bancos de dados ou provedores SaaS (Software as a Service ou Software como Serviço) um acesso CRUD (Create, Read, Update, Delete) a conjuntos de dados subjacentes, permitindo a comunicação entre uma aplicação e um sistema de gestão de base de dados.
2 - APIs de sistemas operacionais.
Este grupo de APIs define como as aplicações utilizam os recursos e serviços disponíveis do sistema operacional.
Assim, cada OS (Operative System) possui um conjunto de APIs, por exemplo, a API do Windows ou a API do Linux possuem kernel-user space API e kernel internal API.
3 - APIs remotas.
Este grupo define os padrões de interação que as aplicações têm em diferentes dispositivos, ou seja, um software acessa determinados recursos localizados fora do dispositivo requerente, como o nome indica.
Como duas aplicações se ligam remotamente através de uma rede, as APIs remotas utilizam protocolos para conseguir a ligação.
4 - APIs web.
Esta classe de APIs é a mais comum, uma vez que as APIs web fornecem dados que os dispositivos podem ler e transferir entre sistemas baseados na web ou arquitetura cliente-servidor.
Protocolos de API:
Protocolos de API permitem padronizar a troca de dados entre diferentes serviços web.
Isto proporciona a oportunidade de acessar capacidades em diferentes sistemas, por meio de diferentes linguagens de programação e em diferentes sistemas operacionais.
Remote Procedure Call (RPC).
O chamado de procedimento remoto ou RPC permite que as APIs web possam se aderir aos princípios de intercâmbio de recursos.
O objetivo deste protocolo é definir a interação entre aplicações com base num programa que solicita dados - cliente - e outro que os fornece - servidor - remotamente.
Service Object Access Protocol (SOAP).
É um protocolo verdadeiramente leve para o intercâmbio de informação estruturada num ambiente descentralizado e distribuído.
As aplicações que cumprem estes princípios permitem o envio de mensagens XML entre o sistema via HTTP (Hypertext Transfer Protocol) ou SMTP (Simple Mail Transfer Protocol).
Representational State Transfer (REST).
REST é um estilo de arquitetura de software com seis restrições para a criação de aplicações que correm sobre HTTP, especialmente serviços web.
É considerada uma alternativa SOAP, uma vez que muitos programadores têm dificuldade em utilizá-la porque têm de escrever grandes quantidades de código para realizar uma tarefa.
Por outro lado, a REST segue uma lógica diferente, uma vez que facilita a disponibilidade de dados como recursos.
GraphQL.
O GraphQL surgiu em resposta à necessidade de desenvolvimento mais rápido, carregamento de dados mais eficiente e maior adaptabilidade móvel.
Esta linguagem de consulta para API permite ao cliente detalhar os dados de que necessita e simplifica a adição de informação por meio de múltiplas fontes.
APIs mais populares:
Google Maps: graças às normas aplicadas pelo Google, a maioria dos sites pode utilizar as APIs do Google Maps para integrar mapas.
Vulcan: esta API multiplataforma permite aos programadores criar interfaces gráficas de alta qualidade em tempo real nas aplicações, proporcionando uma comunicação mais rápida e mais eficiente entre as aplicações e as unidades de processamento gráfico.
Skyscanner: esta plataforma de metabusca facilita aos viajantes a procura de melhores tarifas para os seus voos.
Também fornece uma API para parceiros comerciais que suporta XML e JSON para troca de dados.
Weather API: é um fornecedor de serviços de geolocalização e informação meteorológica com diversas APIs que vão desde previsões meteorológicas a pesquisas de fuso horário, astronomia e muito mais.
APIs inovadoras:
APIs para pagamentos: Com este tipo de API, o seu negócio pode integrar sistemas dentro do website ou aplicação da sua empresa com a intenção de expandir os métodos de pagamento para os seus produtos e serviços.
Redes sociais: As redes sociais também oferecem inovações com APIs para enriquecer a experiência do usuário e incorporar funcionalidades para obter informações sobre visitantes ou criar usuários e perfis no seu site a partir do Facebook, contas Google, entre outras.
Localização: Algumas das APIs mais populares que já mencionámos são aquelas que permitem oferecer informações e serviços específicos aos usuários num local específico, melhorando a experiência.
Comentários
Postar um comentário
Obrigado pelo seu feedback!