TDC2016SP - Mobile and APIs - Como a Mágica Acontece

32
MOBILE & APIS COMO TODA A MÁGICA ACONTECE

Transcript of TDC2016SP - Mobile and APIs - Como a Mágica Acontece

MOBILE & APIS COMO TODA A MÁGICA ACONTECE

EU SOU … @THAMARAHESSEL

ANOS DE EXPERIÊNCIA5 ANOS EM COMUNIDADE3 ANOS ORGANIZANDO2

MINHAEXPERIÊNCIA … ?

… QUANDO FALO QUE TRABALHO NA EASY TAXI

?MINHAEXPERIÊNCIA …

… QUANDO FALO QUE TRABALHO NA

XEASY TAXI CASE

CONCEITOS

O QUE É A ?

Application

Programming

Interface

Interface de Programação de Aplicação

HISTÓRIA

SURGIMENTO DA

O PROBLEMA

COMUNICAÇÃO*

SURGIMENTO DA DE HOJE

HISTÓRIA

SURGIMENTO DA DE HOJE

FTP

WEB SERVICES

XML SOAP

SOA

REST

Client

Web Service

COMO FUNCIONA UMA ?

HTTP

SolicitarReceber

CONCEITOS

CONCEITOS

HTTP

REST

SOAP

COMO FUNCIONA UMA ?

CONCEITOS

O QUE É ? SOAP

➤ É um padrão que combinado a as especificações Web Standards.

➤ Uma mensagem SOAP pode ser propagada por diferentes protocolos.

➤ É um padrão que está muito maduro no mercado.

Simple Object Access ProtocolProtocolo Simples de Acesso a Objetos

1998

CONCEITOS

COMO A FUNCIONA?SOAP

� ����������������POST

REQUEST (REQUISIÇÃO)

RESPONSE (RESPOSTA)

<user> <id>550336c9c46988554b8b4595</id> <name>Thamara Hessel</name> <nickname>thamarahessel</nickname>

</user>

HTTP/1.1 200 OK

CONCEITOS

O QUE É ? REST

➤ Utiliza ao máximo o protocolo HTTP.

➤ Tem o potencial de ser bem mais simples que uma implementação com SOAP

➤ Tende a ser mais performático

➤ Diversas representações como Json, xml, html e text/plain,

2000

REpresentative State TransferTransferência de Estado Representativo

CONCEITOS

COMO A FUNCIONA?

� ����������������GET

REQUEST (REQUISIÇÃO)

RESPONSE (RESPOSTA)

{ "id": "550336c9c46988554b8b4595", "name": “Thamara Hessel", “nickname": “thamarahessel" }

HTTP/1.1 200 OK

REST

CONCEITOS

REPRESENTAÇÃO

� ��������������������GET

REST

<user> <id>550336c9c46988554b8b4595</id> <name>Thamara Hessel</name> <nickname>thamarahessel</nickname>

</user>

HTTP/1.1 200 OK

{ "id": "550336c9c46988554b8b4595", "name": “Thamara Hessel", “nickname": “thamarahessel" }

HTTP/1.1 200 OK

� ��������������������GET

CONCEITOS

REPRESENTAÇÃO

� ��������������������GET

REST

<user> <id>550336c9c46988554b8b4595</id> <name>Thamara Hessel</name> <nickname>thamarahessel</nickname>

</user>

HTTP/1.1 200 OK

{ "id": "550336c9c46988554b8b4595", "name": “Thamara Hessel", “nickname": “thamarahessel" }

HTTP/1.1 200 OK

� ��������������������GET

RECURSO

CONCEITOS

REPRESENTAÇÃO

� ��������������������GET

REST

<user> <id>550336c9c46988554b8b4595</id> <name>Thamara Hessel</name> <nickname>thamarahessel</nickname>

</user>

HTTP/1.1 200 OK

{ "id": "550336c9c46988554b8b4595", "name": “Thamara Hessel", “nickname": “thamarahessel" }

HTTP/1.1 200 OK

� ��������������������GET

RECURSO

RECURSO

CONCEITOS

O QUE MUDA ENTRE E ? REST SOAP

REST SOAP

POST

JSON RSS

GET PUT DELETE

URI

APP

POST

XML

URI

APP

CONCEITOS

ENTÃO É MELHOR ?REST

� ����������������GET

� ����������������POST

{ "id": "550336c9c46988554b8b4595", "name": “Thamara Hessel", “nickname": “thamarahessel" }

� ����������������PUT

� ����������������DELETE

+ INTUITIVO

+ VERBOSO

CONCEITOS

XPÚBLICAS

PRIVADAS ➤ Integrar os sistemas internos;

➤ Aumentar a conectividade interna e até a produtividade;

➤ Criar aplicativos móveis e outros;

➤ Comunidade de desenvolvedores

➤ Inovação

TODA É PÚBLICA ?

CONCEITOSPÚBLICAS PRIVADAS

TODA É PÚBLICA ?

CONCEITOS

SEGURANÇA EM

PRIVADA OU PÚBLICA ?

POSSUI DADOS SENSÍVEIS ?

ATRAVÉS DELA É POSSÍVEL ACESSAR OUTROS RECURSOS ?

MENSURAR VALOR

CONCEITOS

SEGURANÇA EM

HTTPS

SEMPRE !QUE POSSÍVEL

CONCEITOS

SEGURANÇA EM

AUTENTICAÇÃO/AUTORIZAÇÃO

HTTP BASIC

HTTP DIGEST

CERTIFICADOS

TOKEN

OAUTH

DEMO

DEMO

APIDEMO

DEMO

DEMO

DEMO

http://novatec.com.br/livros/webservices-php/

➤ http://pt.slideshare.net/kleberbacili/design-apis-restful-devweek-porto-alegre?qid=6e5380d6-638e-4395-a960-186b17e27dea&v=&b=&from_search=4

➤ http://www.devmedia.com.br/introducao-as-tecnologias-web-services-soa-soap-wsdl-e-uddi-parte1/2873 ➤ http://pt.slideshare.net/sergiocrespo/soa-e-web-services ➤ https://thoughtsasaservice.wordpress.com/2011/03/17/qual-a-diferenca-entre-rest-e-soap/ ➤ http://blog.rivendel.com.br/2013/06/07/seguranca-em-apis-rest-parte-1/

REFERÊNCIAS

DÚVIDAS ?

OBRIGADA =) @THAMARAHESSEL

OBRIGADA =)