O documento discute APIs (Interfaces de Programação de Aplicativos) e como elas permitem o compartilhamento e reuso de dados e funcionalidades entre aplicativos. Ele fornece exemplos de APIs abertas populares como Google Maps, Amazon Web Services, Twitter, European Bioinformatics Institute e Times Newswire.
1. Projeto VI - Tecnologias
básicas da Web 2.0
Igor Pires Soares
Ozório Junio Soares Camargos
2. O que são APIs?
quot;API, de Application Programming Interface (ou
Interface de Programação de Aplicativos) é um conjunto
de rotinas e padrões estabelecidos por um software para a
utilização das suas funcionalidades por programas
aplicativos...quot; - Wikipedia
APIs abertas constituem um modelo no qual esse conjunto
de rotinas e padrões é documentado e disponibilizado
publicamente, permitindo o uso por parte de terceiros.
3. Conceitos
Uma API aberta não significa que todo o código do
aplicativo é aberto
Apenas as suas interfaces podem ser fornecidas e
documentadas
É dependende de licenciamento
Possibilita a disseminação de serviços pré-existentes
através de diversas fontes
4. Padrões
XML
JASON
(JavaScript Object Notation - Notação de Objetos JavaScript)
formatação leve de troca de dados.
é em formato texto e completamente independente de
linguagem, pois usa convenções que são familiares às
linguagens C e familiares, incluindo C++, C#, Java,
JavaScript, Perl, Python e muitas outras.
formato ideal de troca de dados.
5. Padrões
SOAP
SOAP (originado do acrônimo inglês Simple Object Access
Protocol )
é um protocolo para troca de informações estruturadas
em uma plataforma descentralizada e distribuída,
utilizando tecnologias baseadas em XML.
sua especificação define um framework que provê
maneiras para se construir mensagens que podem
trafegar através de diversos protocolos.
6. Padrões
WSDL
Service Web Definition Language define um sistema para a
descrição de serviços
objetivo: descrever as interfaces apresentadas e apontar
a localização dos seus serviços, disponíveis em um
local previsível e bem conhecido, na rede, o qual
permite que o cliente acesse de maneira confiável.
REST
Representational State Transfer
é um mecanismo de composição e formatação de
documentos,
baseado em marcações visualmente simples
flexibilidade e extensibilidade da notação.
7. Exemplo: Google Maps
Permite a incorporação do Google Maps através de
JavaScript e Flash
Também fornece utilitários para manipular os mapas
Permite adicionar conteúdo ao mapa através de serviços
externos
Disponível para qualquer site que seja gratuito
8. Exemplo: Amazon Web Services
(AWS)
Permite que os desenvolvedores obtenham informações
sobre produtos
Expõe funcionalidades de e-commerce da Amazon
Possibilita modelos de negócios associados
Negócios menores podem usar a infraestrutura de
processamento de servidores externos
APIs REST E SOAP
9. Exemplo: Twitter
Permite acesso aos bancos de dados
Permite acesso aos fluxos de atividade (usuários, amigos,
seguidores e etc)
Possibilita a criação de aplicativos que mostrem
atualizações (tweets)
Usa os formatos XML e JASON
10. Exemplo: European Bioinformatics
Institute (EBI)
Permite acesso a dados de estrutura molecular, ácidos
nucleicos e sequencias de proteínas
Permite a comparação de estruturas
Também fornece acesso a ferramentas de análise
Tecnologias utilizadas: SOAP, WSDL, REST
11. Exemplo: Times Newswire API
Possibilita acesso aos metadados e links dos artigos do site
do jornal The New York Times, tão logo quanto eles sejam
publicados.
Permite a obtenção dos posts do blog do jornal
Também está integrado ao The International Herald Tribune
Formato de resposta em JSON (.json), XML (.xml) e
serialized PHP (.sphp)
12. Referências
API do Google Maps - http://code.google.com/intl/pt-
BR/apis/maps/
Amazon Web Services - http://aws.amazon.com/what-is-
aws/
Twitter - http://apiwiki.twitter.com/
European Bioinformatics Institute (EBI) - http://www.ebi.ac.
uk/Tools/webservices/
Times Newswire - http://www.programmableweb.
com/api/new-york-times-newswire
API do Google Earth - http://www.youtube.com/watch?
v=6mrG_bsqC6k