quarta-feira, 5 de junho de 2019

API (Application Interface Programming): Entenda O Que É

ilustraçao da palavra API com assuntos relacionados

API (Application Interface Programming) é um conjunto de padrões de programação que permite integrar diversos softwares e aplicativos na web. Graças a ele, você pode fazer pagamentos online direto na loja, logar em diversos sites com suas redes sociais e muito mais.

API é um daqueles termos que você precisa pesquisar mais de uma vez para entender.

Mas é muito mais simples do que parece, pois você já está usando APIs o tempo todo enquanto navega por aqui.

Por trás do nome “Interface de Programação de Aplicativos”, está o conceito de integração que está dominando a internet há tempos.

Se você já fez login em algum site por meio do Facebook, sabe do que estou falando.

Uma API é simplesmente isto: um recurso que conecta plataformas e aplicativos totalmente diferentes para facilitar sua vida online.

Assim, os meios de pagamento são integrados às lojas virtuais, as redes sociais são integradas aos blogs e os softwares trocam complementos uns com os outros.

O conceito ficou um pouquinho mais claro?

De qualquer forma, tudo vai parecer fácil demais em alguns instantes.

Se você quer entender o que é API de uma vez por todas, continue a leitura.

O que é API?

mao masculina segurando tablet com uma ilustaçao da palava API

API é a sigla para Application Programming Interface, um conjunto de padrões de programação que permite integrar sistemas.

Em português, significa Interface de Programação de Aplicativos, mas o uso do termo em inglês predomina na área da tecnologia.

Basicamente, a API é uma interface usada para “abrir” os sistemas de back-end (nível de programação do software) e permitir a troca de informações entre aplicações com linguagens diferentes.

Não é tão simples de entender para quem não está familiarizado com essa dimensão oculta dos códigos.

Para facilitar, podemos dizer que a API é a “ponte” que conecta aplicativos baseados na web.

Com ela, é possível que dois programas na nuvem “conversem” entre si e integrem suas funcionalidades.

Você já notou que a maioria dos aplicativos e plataformas que usamos hoje têm inúmeras integrações entre si?

Pois é, na verdade, você está usando APIs todos os dias, ao acessar suas redes sociais, fazer uma compra online ou usar serviços de geolocalização.

Um simples botão de compartilhamento do Facebook em outros sites é um exemplo de API, assim como as opções de pagamento do PagSeguro dentro dos e-commerces.

Ficou mais fácil de entender?

Como você deve imaginar, essa possibilidade de integração é vantajosa para usuários e empresas.

Por isso, cada vez mais, as empresas de tecnologia estão liberando APIs para permitir que outros desenvolvedores complementem suas soluções.

Desse modo, é possível conectar diferentes bancos de dados e linguagens para criar sistemas poderosos, repletos de funcionalidades que não existiriam sem as APIs.

História das APIs

homem executivo com simbolos de programaçao

O primeiro registro histórico do termo API data de 1968, quando o cientista Ira Walter Cotton publicou o artigo Data structures and techniques for remote computer graphics.

Mas o conceito moderno veio mais de 20 anos depois, com a dissertação Architectural Styles and the Design of Network-based Software Architectures (Universidade da Califórnia, 2000), de Roy Thomas.

Logo, foi nos EUA do novo milênio que surgiram os primeiros APIs como conhecemos, baseados em protocolos abertos da web.

Com certeza, você conhece estas três empresas visionárias que lançaram as primeiras APIs da história.

Salesforce

entrada de loja com o nome salesforce

No dia 7 de fevereiro de 2000, a Salesforce lançava sua primeira API na conferência IDG Demo 2000.

A empresa de software norte-americana foi pioneira em softwares sob demanda baseados na web e voltados à gestão de vendas e atendimento ao cliente.

Sua API inaugural oferecia um serviço de automação de força de vendas, permitindo o compartilhamento de dados entre diferentes tipos de negócios.

Hoje, sua solução de CRM oferece diversas opções de integração com outros serviços e plataformas corporativas.

Ebay

mao masculina em mesa executiva segurando smartphone com a palavra ebay

Em novembro de 2000, foi a vez do eBay lançar uma API para expandir seus negócios.

A novidade permitiu que parceiros e desenvolvedores integrassem suas aplicações ao marketplace, facilitando a geração de negócios dentro da plataforma.

Atualmente, o eBay é um dos maiores e-commerces do mundo e possui sua própria comunidade de desenvolvedores com várias APIs livres e gratuitas.

Inclusive, a empresa criou um prêmio para reconhecer os melhores aplicativos desenvolvidos a partir de suas APIs: o Star Developer Awards for Innovation.

Twitter

mao feminina segurando smartphone entrando no aplicativo twitter

Finalmente, o Twitter aparece na lista de APIs pioneiras, tendo lançado a sua em setembro de 2006.

O site cedeu às APIs depois de constatar que vários aplicativos paralelos estavam sendo desenvolvidos sem autorização.

Assim como o eBay, hoje o site possui sua área dedicada aos desenvolvedores, com APIs para integração de tweets, anúncios, serviços de mensagens e muito mais.

Vantagens da Integração por APIs

homem em meio a ilustraçao de símbolos API

Mas, afinal, o que explica essa febre de APIs na tecnologia da informação?

Vamos conferir as principais vantagens dessas interfaces.

Segurança

ilustraçao de laptop com cadeado e pessoas em volta simbolizando segurança

As APIs oferecem métodos seguros para proporcionar a integração e manter a proteção dos dados.

Quando uma empresa decide criar uma API, ela precisa se preocupar com a possível exposição dos sistemas de back-end e dados corporativos confidenciais.

Afinal, uma abertura como essa pode deixar o sistema vulnerável às ameaças externas.

Para isso, existem recursos de programação que funcionam como portões, limitando o acesso a um conjunto específicos de informações determinado pela empresa.

São os famosos gateways de API, que permitem filtrar quem acessa e quais dados ficarão disponíveis.

Monetização por acesso

mulher segurando smartphone com simbolos de capital

A monetização por acesso transforma a API em uma fonte direta de receita para as empresas de software.

Esse modelo comercial funciona a partir da restrição do acesso a determinadas funcionalidades da aplicação, que são liberadas conforme o plano de pagamento.

São as chamadas APIs privadas, que abrem apenas uma parte de seus dados e potencialidades, mantendo toda a parte administrativa sob controle da empresa proprietária.

Um exemplo clássico é o modelo da Netflix, que libera o conteúdo sob demanda mediante assinatura do serviço.

No mercado, há várias empresas que cobram os desenvolvedores pelo acesso às suas APIs.

Redução no volume de dados

Graças às restrições de acesso e integrações específicas, as APIs conseguem reduzir o volume de dados e otimizar a performance do sistema.

Como há um tipo específico de informação sendo trocado, a API evita a sobrecarga do sistema e elimina o tráfego de dados desnecessários.

Possibilidade de auditar acessos

homem em meio a uma ilustraçao sobre segurança de API

A API também permite que as empresas auditem quem acessou, quando, de qual localização e o que foi consultado na base de dados.

Isso porque as APIs estão gerando dados de acesso continuamente através do gateway, oferecendo uma visão panorâmica do fluxo de dados e tipo de utilização.

Para empresas como e-commerces e bancos, por exemplo, é uma função importantíssima para manter a segurança dos dados financeiros de seus clientes.

Além disso, as empresas proprietárias podem monitorar a forma como suas APIs estão sendo usadas e traçar estratégias para melhorar seu potencial no mercado.

Integre aplicativos com poucos cliques

ilustraçao representando facilidade em meio a dispositivos moveis

E, claro, a facilidade de integração entre aplicativos é o grande diferencial por trás do fenômeno das APIs.

Graças a elas, sistemas completamente diferentes podem se conectar em poucos cliques, falando a mesma língua.

Para os usuários, as APIs abrem um mundo de possibilidades ao integrar suas principais plataformas e aplicativos do dia a dia de forma prática e inteligente.

Por exemplo, você conta com a comodidade de fazer login em vários sites por meio do Facebook e pagar suas compras pelo PayPal em diversas lojas sem preocupação com a segurança.

Para as empresas, é a solução perfeita para oferecer softwares mais completos, estreitar parcerias com outras empresas e ampliar suas oportunidades de negócio.

Para o e-commerce, por exemplo, a API oferece a possibilidade de automatizar tarefas como o cadastramento de produtos em um marketplace.

Já as empresas de SaaS (Software as a Service) conseguem integrar seus serviços com outros aplicativos populares já utilizados pelos clientes, criando um atrativo a mais para suas soluções.

Como funciona uma API?

mao masculina em meio a palavra API com icones relacionados

A API funciona por meio da comunicação entre diversos códigos, que determinam o comportamento dos objetos em uma interface.

Na programação orientada a objetos, cada objeto é um elemento do sistema que contém diferentes ações e funções.

Desse modo, as APIs conseguem interligar as diversas funções em um site (por exemplo, serviço de mensagens, buscas, conteúdos), permitindo que outras aplicações utilizem esses conjuntos.

O exemplo mais prático para entender essa lógica é a API do Google Maps, que incorpora o serviço de mapas dentro de qualquer site ou blog.

Para usar essa API, o responsável pelo site só precisa aplicar o código original e adaptá-lo conforme as permissões que o Google disponibiliza.

Tipos de API

homem com a palavra API em sua mao

Já que estamos abordando as APIs de um ponto de vista mais técnico, vamos conhecer seus principais tipos.

Confira os quatro mais comuns.

DLL – Dynamic-link library

diferentes tipos de API em meio a codigos binarios

As APIs do tipo DLL, ou Dynamic-link library, são baseadas em bibliotecas de vínculo dinâmico, conhecidas pelos arquivos de extensão DLL, OCX e DRV.

São executáveis que resultam de classes ou conjuntos compilados nos ambientes .Net e Delphi, por exemplo.

Quando incorporadas ao DLL, conforme suas regras de visibilidade, essas APIs expõem vários métodos e funções para a integração de terceiros.

Plugins

smartphone com a palavra wordpress em mesa

Com certeza, você já utilizou diversos plugins e extensões em aplicativos e softwares do seu dia a dia.

Na nossa web 2.0, os plugins estão entre os tipos mais comuns de APIs, que permitem a integração rápida e prática de funcionalidades extras e complementos.

Hoje, boa parte das aplicações web que utilizamos contam com vários plugins adicionados.

No WordPress, por exemplo, você pode acrescentar inúmeros recursos e funções ao seu site por meio dessas APIs populares.

Frameworks

dedo indicando uma tecla framework no teclado

Os frameworks são conjuntos de códigos padronizados e genéricos ligados diretamente ao código-fonte das aplicações.

Ou seja: são soluções prontas para tarefas específicas, que poupam o tempo do desenvolvedor ao evitar a necessidade de redigitar códigos.

Alguns exemplos clássicos de frameworks são o JQuery (biblioteca de funções JavaScript) e Bootstrap (componentes de interface para HTML, CSS e JavaScript).

Embora sua função seja muito semelhante ao da API, por facilitar a incorporação de códigos e integração entre aplicativos, o framework é um outro conceito de tecnologia.

WebAPI

Já as WebAPIs são interfaces utilizadas em soluções web, ou seja, dentro do www.

Muitas pessoas confundem os chamados Web Services, ou serviços web, com as WebAPIs, mas há algumas diferenças importantes entre os conceitos.

Ambos fazem parte da tendência SOA (Service Oriented Architecture ou Arquitetura Orientada a Serviços), que transforma sistemas em serviços no mercado de TI.

Mas enquanto o Web Service se concentra nas integrações internas, as APIs web são orientados à criação de aplicativos para clientes.

Logo, podemos dizer que os serviços web são mais focados na organização e otimização do trabalho do TI, enquanto as APIs têm propósitos comerciais e atendem às necessidades das comunidades de desenvolvedores.

APIs do nosso cotidiano

mao masculina com smartphone gravando evento

Agora vamos falar das APIs na prática, para você entender o quanto essas aplicações são populares na internet.

Veja alguns exemplos do cotidiano.

Facebook / Uber

passageiro em carro com smartphone em maos no aplicativo uber

Em 2014, o Uber lançou sua API para permitir que outros desenvolvedores incorporem suas funções aos seus aplicativos.

O lançamento animou as empresas que desejavam integrar as corridas do aplicativo aos seus serviços.

Na época, foram fechadas parcerias com empresas do porte de TripAdvisor, Starbucks e United Airlines.

Um ano depois, a empresa deu mais um passo e incluiu o Facebook Messenger em suas integrações nos EUA.

Segundo o comunicado da rede social, publicado no Canal Tech, a API passou a permitir que os usuários chamem um Uber sem baixar o aplicativo oficial, utilizando apenas seu Facebook Messenger.

A ideia era fazer com que solicitar corridas fosse tão simples quanto enviar uma mensagem.

Hoje, o serviço permanece ativo, mas ainda não há previsão para chegar ao Brasil.

Google Maps / Sites de hotéis

mao masculina em area urbana com smartphone em maos no aplicativo google maps

Ao navegar por sites de hotéis para fazer reservas, é comum se deparar com o famoso mapa do Google Maps exibido diretamente na página.

Esse é o Google Maps API, que permite a qualquer pessoa utilizar o serviço de mapas e geolocalização em seus sites e aplicações.

No site oficial, a API está disponível nas seguintes versões:

  • Google Maps JavaScript API: permite manipular o mapa e adicionar conteúdo à sua página da web utilizando JavaScript
  • Google Maps API for Flash: permite incorporar um mapa Google à página ou aplicativo baseado em Flash
  • Google Static Maps API: incorpora imagens simples de mapas estáticos sem carregamento dinâmico
  • Google Maps Data API: permite visualizar, armazenar e atualizar dados de mapas por meio dos feeds do Google.

Agora, quando você encontrar um mapa desses ao planejar sua viagem, vai saber que se trata de uma API com várias funcionalidades.

Sites de E-Commerce / Operadoras de crédito

homem em mesa executiva com laptop e caixas ao lado

Outro exemplo típico são os sites de e-commerce, nos quais você tem acesso às principais operadoras de crédito diretamente na página de pagamento.

O PayPal, por exemplo, oferece diversas versões de APIs para desenvolvedores com esse propósito.

O PagSeguro também possui sua página para desenvolvedores com instruções detalhadas para integração de seus meios de pagamento em lojas virtuais.

Essa integração transmite mais confiança para o usuário durante as operações de pagamento no e-commerce, beneficiando diretamente o lojista e o intermediador.

Logar em site com Redes Sociais

Por fim, um tipo de API que aparece o tempo todo na web é aquele que permite o login com os dados das suas redes sociais.

Tudo o que essa API faz é reproduzir seus dados do Facebook, LinkedIn, Instagram e outras mídias sociais para criar contas em outros sites e plataformas.

Assim, você ganha tempo no preenchimento do cadastro e o site agiliza sua geração de leads e captação de clientes.

Desenvolvimento de API

ilustraçao com mao feminina e palavra API com simbolo de engrenagem

Do ponto de vista técnico, desenvolver uma API não é uma tarefa tão difícil para as empresas.

Mas a criação desse tipo de interface também passa pela definição dos objetivos de negócio, experiência do usuário final e também a experiência do desenvolvedor.

As questões mais importantes nesse caso são “quais funcionalidades são necessárias” e “como os desenvolvedores e usuários vão utilizar a API”.

Em relação ao processo de arquitetura da API, é preciso levar em conta as seguintes camadas:

  • Camada de segurança: é o sistema que garante a proteção dos dados confidenciais e impede que a API exponha informações sigilosas
  • Camada de cache: é a camada de armazenamento de cache para melhorar a eficiência da interface
  • Camada de representação: é a camada responsável pela apresentação da sua API para os desenvolvedores, com uma interface amigável
  • Camada de orquestração: é a camada que combina diferentes dados de APIs para oferecer novos recursos de back-end.

Assim, desenvolver uma API de sucesso significa projetar uma excelente interface para desenvolvedores, garantir a segurança dos dados e oferecer uma experiência de qualidade aos usuários.

Se você pretende desenvolver uma API, lembre-se de que o mais importante é alinhar o processo de criação com os objetivos do negócio.

Conclusão

No fim das contas, a API não tem grandes mistérios, não é mesmo?

Na verdade, você só precisa compreender a lógica dessas interfaces e a importância da integração para os negócios digitais.

A parte dos códigos, nós podemos deixar para os desenvolvedores.

Mas, como reforcei durante o texto, as APIs vêm dominando a web e nós precisamos entender seu funcionamento para prever os rumos do mercado digital.

No marketing digital, por exemplo, nós precisamos das APIs para integrar o site com as redes sociais e unir nossas ferramentas aos sistemas de automação.

No futuro, é provável que elas se tornem ainda mais complexas e integrem sistemas inimagináveis.

Por isso, estou sempre de olho nos lançamentos de APIs e suas tendências.

E você?

Quais APIs utiliza no seu dia a dia e nos negócios?

Contribua com seu comentário e me ajude a ampliar essa conversa.

The post API (Application Interface Programming): Entenda O Que É appeared first on Neil Patel.


API (Application Interface Programming): Entenda O Que É Publicado primeiro em

Nenhum comentário:

Postar um comentário