PHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integrações

iMasters
iMastersjornalista, web editor, web writer, tradutora (en-pt/pt-en) at iMasters
APIs bem desenhadas como
base para integrações
José Vahl
Gerente de Tecnologia
Ciclista, fotógrafo,
cervejeiro, gerente de
tecnologia e APIs addicted
jose.vahl@sensedia.com
@josevahl
Petterson Andrade
Arquiteto de Software
Palestrante, nerd,
arquiteto de software,
cruzeirense e confia na
tecnologia
petterson.andrade@sensedia.com
@pett4j
Applications Services
Enabling Digital Transformation
Quick Facts
Founded
in 2007
Campinas,
São Paulo,
Rio de Janeiro
and
US Incorporated
Strong SOA Background
(Gartner MQ SOA Gov, 2009)
+
● Services & API Strategy
● Architectural Solution
● API Platform
Agenda
Integração e evolução
Cenários de APIs
API First
Design de APIs
Mão na massa!
+
O Estado
Corrente das
Coisas
SOAP/XML
WS-*
Arquitetura de Serviços!
Legado ++
Integração!
Foco Total
Ênfase no
ESB
+
Arquitetura tradicional
ERPBillingCRM
ESB
(serviços)
Processos
Client
Aplicações
QualidadeeSegurança
GovernançaSOA
+
Novos elementos, novas abordagens...
Cloud
Mobilidade
Social
Analytics
Internet of
Things
Plataforma &
Ecossistema
Microservice
Connector-
less
Custom
Applications
CustomBillingERP
Aplicações
On Premise
Cloud
BillingCheckoutERP
ESB
(serviços)
Processos
Cliente
Aplicações
API
Gateway
QualidadeeSegurança
GovernançaSOA
Cloud
Mobilidade
Custom
Applications
CustomBillingERP
Aplicações
On Premise
Preocupações arquiteturais:
● Segurança
● Escalabilidade
● Limitações de banda
Social
Aplicações
BillingCRMERP
Social
Aplicações
BillingCRMERP
ProxyLayer
Monitoração
Unificação
da gestão de
chaves
Internet
of Things
Microservice #1 Microservice #2 Microservice #3 Microservice #4
Banco Relacional Banco Orientado
a Documentos
Key/Store Data
Base
Graph Database
HTTP HTTP HTTP HTTP
Microservice
Microservice
Microservice #1 Microservice #2 Microservice #3 Microservice #4
Banco Relacional Banco Orientado
a Documentos
Key/Store Data
Base
Graph Database
HTTP HTTP HTTP HTTP
API Gateway
HTTP HTTP HTTP HTTP
Service aggregation
Rate Limiting
Monitoring & Alerts
Authentication
Models
Policy Enforcement
Exception handling
Analytics on API
Consumption
Connector-
less
Adapter Adapter
Human Capital Supply Chain
HTTP HTTP HTTP HTTP
ERP CRM
Adapter
HTTP
Enterprise Resource
planning
HTTP
Enterprise
Performance
Connector-
less
Adapter
Human Capital Supply Chain
HTTP HTTP HTTP HTTP
API Gateway
Service aggregation
Rate Limiting
Monitoring & Alerts
Authentication
Models
Policy Enforcement
Exception handling
Analytics on API
Consumption
ERP CRM
Adapter
HTTP
Enterprise Resource
planning
HTTP
Enterprise
Performance
HTTP
Adapter
Uma avalanche de APIs
Arquitetura de Serviços!
Legado ++
Ênfase no
ESB
+
Formas de integração
Backend
APIs
The Digital Glue
Integrações com
Aplicações SaaS
Aplicações
Móveis
Internet
of Things
Inovação
Ecossistema
de Parceiros
Digitais
+
SSOCIAL
MMOBILE
AANALYTICS
CCLOUD
IoTINTERNET
OF THINGS
Transformações Digitais
Experiências digitais transformadas
Arquitetura de Serviços!
Legado ++
+
Cenários de uso das APIs
Inovação abertaPlataformas e
Ecossistemas
Clientes e Parceiros Múltiplos dispositivos
+
Plataformas e Ecossistemas
Planejamento de viagens”“
+
Clientes e Parceiros
Aproximação de
vendedores e compradores
“ ”
+
Clientes e Parceiros
Aproximação de
vendedores e compradores
“ ”
+
Múltiplos Dispositivos
Missão: Dar às pessoas
acesso a todas as músicas
que elas quiserem o tempo
todo, de forma simples e
legal.
“
”
+
Inovação Aberta
Aceleradora de Startups
focada em Apps para os
28M de usuários Nike
“
”
PHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integrações
+
Multi-sided
Business Models
Platform
Power
Conceitos em comum
+
The Magnet:
- Design of Incentives
- Pricing Models
- Reputation Systems
The Matchmaker:
- Rich Data Collection
- Data-oriented Match
- Curation (the best and the
rest)
Gravity
Flow
Connection
The Toolbox:
- Simple
- Open
- Agile
+ API First
78%
+
Compromisso com APIs
“Anyone who doesn’t do this will be fired. Thank you; have a nice day!”
- Jeff Bezos
+
Foco na informação ou na integração?
● Serviços projetados para
uso interno
● Código Legado
● SOAP Services
● Tabelas de Banco
API
(design problemático)
Foco na
informação
Foco na
integração
info:
version: 0.0.1
title: My API História para
contar
+
Design despriorizado +
Visão de curto prazo
Com “APIs”
+
Design de
APIs info:
version: 0.0.1
title: My API
PHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integrações
1966
Clint Eastwood
Lee Van Cleef
Eli Wallach
Sergio Leone
(Por um punhado de dólares e Por uns dólares a mais)
RESTSOAP vs.
JSONXML vs.
Valor RESTful Documentação Status
Codes
Otimização Hypermedia Segurança Instrum/zação
As primeiras decisões…
JSONREST +
And the winners are...
Muito confusa
?
Valor
Não “pegou”
http://www.infoq.com/news/2015/11/dropbox-deprecates-apis
778 Pokémon
248 Habilidades
?
Valor
778 Pokémon
248 Habilidades
?+55k calls / dia
Valor
“Você pode até passar batom num porco,
mas ele continuará sendo um porco!”
Foco no consumidor!
RESTful
REST
Representational State Transfer
Estilo arquitetural criado por Roy Fielding
RESTful
Design que respeita os conceitos REST
Coleção
/pedidos
Resources
Elemento
/pedidos/{id}
/getAccount
/getAllAccounts
/createDirectory
/updateGroupName
/findClientById
RPC?
URI: https://api.mycompany.com/name-of-api/resource
HTTP ou
HTTPS
Seu domínio Nome da API
(opcional)
Recursos e
Parâmetros
RESTful
GET POST PUT DELETE
Resource POST
(create)
GET
(read)
PUT
(update, create)
DELETE
(delete)
/pedidos Cria novo
pedido
Lista pedidos -- Apaga todos
os pedidos
/pedidos/3747 -- Mostra pedido
3747
Atualiza pedido
3747, se não
existir, cria
Apaga pedido
3747
RESTful
Método de Consulta
(Cachable, Safe, Idempotente)
GET /vendas/pedidos
GET /checklist/item/4
GET
POST
PUT
DELETE
PATCH
OPTIONS
HEAD
Método para “Criação”
(Unsafe, Não-Idempotente)
POST /clientes/98W33GJ201/enderecos
{
"endereco": "Av. Brigadeiro Faria Lima",
"numero": "3800",
"complemento": "18o. Andar",
"bairro": "Itaim Bibi",
"cidade": "São Paulo",
"estado": "SP",
"cep": "04538-132"
}
GET
POST
PUT
DELETE
PATCH
OPTIONS
HEAD
GET
POST
PUT
DELETE
PATCH
OPTIONS
HEAD
Método para “Atualização”
(Unsafe, Idempotente)
PUT /clientes/98W33GJ201/enderecos/1
{
"endereco": "Av. Brigadeiro Faria Lima",
"numero": "3800",
"complemento": "18o. Andar",
"bairro": "Itaim Bibi",
"cidade": "São Paulo",
"estado": "SP",
"cep": "04538-132"
}
GET
POST
PUT
DELETE
PATCH
OPTIONS
HEAD
Método para Remoção
(Unsafe, Idempotente)
DELETE /pedidos/98W33GJ201
DELETE /users/98S7726QV1/photos
GET
POST
PUT
DELETE
PATCH
OPTIONS
HEAD
Método para Atualização parcial
(Unsafe, Não-Idempotente)
PATCH /users/98W33GJ201
{
"email": "joao.silva@empresa.com"
}
PATCH /pedidos/39D0091B86
{
"status": "Cancelado"
}
GET
POST
PUT
DELETE
PATCH
OPTIONS
HEAD
OPTIONS
Quais métodos são permitidos?
OPTIONS /clientes
Allow: HEAD,GET,POST,OPTIONS
HEAD
Quero ver apenas o Header
HEAD /clientes
Date: …
Content-Type: application/json
Content-Length: 12345
PHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integrações
Documentação
DocumentaçãoTHINGS
CHANGE!
v1
v2
v3
v4
Documentação
Versão
URI: https://api.mycompany.com/name-of-api/v2/resource
HTTP ou
HTTPS
Seu domínio Nome da API
(opcional)
Recursos e
Parâmetros
Outras alternativas:
• Twilio: /2010-04-01/Accounts/
• Salesforce.com: /services/data/v20.0/limits
Versionamento
Nunca quebre o cliente!!
UX
(Developer Experience)
DX
API Portal
Developers
https://developers.[you].com
Powered by
❖ Introdução, tutoriais e
exemplos de códigos
❖ Self-service Signup
❖ Documentação interativa
(API Browsing)
❖ Forum, Blog & Dev support
❖ Testes facilitados (Sandbox)
❖ Dev. Dashboard
API Developers Portal
Documentação
Documentação
Interativa
desenvolvedores.cnova.com
Getting
Started
www.twilio.com/api
Exemplos de
código na
linguagem
do developer
sendgrid.com/docs
Sign-up e Tokens
de acesso
automáticos
stripe.com/docs
REST Console ou
Sandbox / Playgroung
dev.transparencia.org.br
PHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integrações
Hackathon & Open Innovation
Status Codes
200
400
500
Resultado OK
Erro no Cliente
Erro no Servidor
201 Criado
202 Aceito
401 Não Autorizado
405 Operação não permitida
413 Request muito grande
429 Muitas requisições
503 Servidor não disponível
204 Sem Conteúdo
STATUS OK 200
200
400
500
Status &
Error Codes
200 OK
GET /candidatos?estado=SP&partido=PP
200 OK
[
{
"id": "1532962",
"apelido": "PAULO MALUF",
"nome": "PAULO SALIM MALUF",
"numero": "1111",
"cargo": "Deputado Federal",
"estado": "SP",
"partido": "PP",
"reeleicao": true
}
]
200
400
500
Status &
Error Codes
201 Created
POST /items/1234/bids
{
"amount" : 602.99
}
201 Created
Location: /items/1234/bids/100001
{
"amount" : 602.99,
"current_bid" : 510,
"winning" : true
}
200
400
500
Status &
Error Codes
400 Bad Request
GET /candidatos
400 Bad Request
{
"status" : 400,
"code" : 40377,
"message" : "Parâmetro 'estado' não
pode ser nulo ou vazio"
"more" : https://dev.empresa.com/errors/40377
}
200
400
500
Status &
Error Codes
Outros Comuns
401
403
404
413
429
Unauthorized
Forbidden
Not Found
Request is too Large
Too Many Requests
200
400
500
Status &
Error Codes
500 Internal Server Error
PUT /vendas/v1/pedidos/9940382
{
”status" : canceled
}
500 Internal Server Error
{
"status" : 500,
"message": ”Oops. Algo saiu errado”
}
http://en.wikipedia.org/wiki/List_of_HTTP_status_codes
Otimização
Filtros e
paginação
Callbacks
Caching
FiltrosGET /vendas/v2/pedidos?status=concluido
GET /pedidos/123AF15J?_fields=numero,data,valor
Busca com escopo (subconjuntos):
Respostas parciais:
GET /search?q=macbook+air
Busca Global:
Paginação
GET /pedidos?_offset=50&_limit=25
Recomendação:
Outras opções:
Linkedin:
Instagram:
?start=50&count=25
?min_id=3091&max_id=3245&count=25
Caching
Evite tráfego desnecessário
Latência de rede
Sobrecarga nos servidores
Atenção
❖ Tempo de invalidação do cache
❖ Sincronização em clusters
Já chegamos?
Já chegamos?
Já chegamos?
Já chegamos?
Já chegamos?
Stop Pooling Me
Marketplace API
❖ Consulta estoque
❖ Cálculo de frete
❖ Novo pedido recebido
https://api.mywebstore.com/v1/estoque
https://api.mywebstore.com/v1/frete
https://api.mywebstore.com/v1/pedido
Chamadas Reversas:
Hypermedia
*POX = Plain Old XML, Richardson Maturity Model
HATEOAS = Hypermedia as the
Engine of Application State
http://martinfowler.com/articles/richardsonMaturityModel.html
GET /items?q=macbook+air+new
{
"results" : [
{
"id" : 123,
"name" : "Macbook Air 2010 LIKE NEW",
"price" : "499"
}
]
}
SEM
Hypermedia
COM
Hypermedia
GET /items?q=macbook+air+new
{
"results" : [
{
"_links" : [
{"rel": "self","uri": "/items/123" },
{"rel": "bids","uri": "/items/123/bids" },
{"rel": "win","uri": "/items/123/bids?q=win" }
],
"name" : "Macbook Air 2010 LIKE NEW",
"price" : "499"
}
]
}
Segurança
❖ Acesso não autorizado
❖ Ataques
❖ Sobrecarga
❖ Confidencialidade
❖ Implementações
desastradas em clients
Acesso não autorizado Segurança baseada na obscuridade
A prova de hackers Canal inseguro (hijacking)
Níveis de
CRITICIDADE
Básico
Intermediário
Crítico
❖ Quanto você conhece
dos Client Apps?
❖ As APIs dão acesso a
informações sensíveis?
❖ As APIs alteram dados
importantes?
Básico
Intermediário
Crítico
❖ Quanto você conhece
dos Client Apps?
❖ As APIs dão acesso a
informações sensíveis?
❖ As APIs alteram dados
importantes?
API totalmente pública,
potencialmente centenas de
Apps externos
Alguns Apps externos de
parceiros bem conhecidos
Somente Apps desenvolvidos
pela própria empresa
Básico
Intermediário
Crítico
Registros médicos, transações
financeiras ou dados vitais ao
negócio
Informações sociais,
Internet das coisas
Informações acessórias não
relacionadas a usuários
❖ Quanto você conhece
dos Client Apps?
❖ As APIs dão acesso a
informações sensíveis?
❖ As APIs alteram dados
importantes?
Básico
Intermediário
Crítico
Todas as operações (inclusive
DELETEs) em elementos e
coleções de recursos
GETs e alguns POSTs e PUTs em
recursos não vitais
Somente GETs
❖ Quanto você conhece
dos Client Apps?
❖ As APIs dão acesso a
informações sensíveis?
❖ As APIs alteram dados
importantes?
Separation of
CONCERNS
Web API
FAÇAD
E
Segurança
❖ Agrupamento de elementos com
responsabilidades semelhantes
❖ Simplificação de regras de negócio
Separation of
CONCERNS
Autenticação
Autorização
Privacidade
Disponibilidade
Auditoria
Integridade
APIs
Web API
FAÇADEUsers Apps
Partners/
Developers
Your Backend
Users Apps
APIs
Autenticação
Autorização
Disponibilidade
Privacidade
Auditoria
Integridade
API Gateway
Partners/
Developers
Your Backend
Web API
FAÇADE
Autenticação /
Autorização
Privacidade
Integridade Disponibilidade
Auditoria
❖ Acesso não autorizado
❖ Ataque Força Bruta
❖ Roubo de Credenciais
❖ Session hijacking
❖ DDoS
❖ Buffer Overflow
❖ Injection (SQL, XML, JSON)
❖ Information Disclosure
❖ Man-in-the-middle e
Network Eavesdropping
❖ Data Scraping
❖ Injection (SQL, XML, JSON)
❖ Cross-site Scripting (XSS) e
Request Forgery (XSRF)
❖ Repudiação
❖ Compliance (PCI-DSS, HIPAA)
App Token Basic HTTP OAuth 2.0 OpenID
http://downloads.sensedia.com/webinar-seguranca-de-apis
Instrum/zação
Eat your own
Dog Food
Trace de calls,
Monitoramento,
Rate Limiting e
Alertas
Compreenda o
padrão de uso
das APPs e APIs
status.aws.amazon.com
Status Page,
Release Notes,
Blog
Foruns de discussão e
Abertura de tickets
desenvolvedores.catho.com.br
PHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integrações
Instrum/zação
PHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integrações
REST + PHP
+
Rest + PHP
+
Silex
- Está entre os mais rápidos micro
frameworks de REST PHP
- Baseado nos componentes
Symphony
- Boa documentação e bom suporte
da comunidade.
+
Slim
- Está entre os mais rápidos micro
frameworks de REST PHP
- Boa documentação
- Integrado com implementações de
terceiros
+
Lumen
- Baseado no Laravel
- Boa documentação
- Não tão rápido quanto o Slim ou
Silex
+
Phalcon
- O mais rápido dos frameworks
REST PHP
- Extremamente otimizado e modular
- Não tão rápido quanto o Slim ou
Silex
- Boa documentação
Api na prática
Backend
APIs
The Digital Glue
Integrações com
Aplicações SaaS
Aplicações
Móveis
Internet
of Things
Aplicações
Web
Ecossistema
de Parceiros
Digitais
+
A mudança
Belo Horizonte Campinas
+
Visão de negócio
- Hub mudanças
- Juntar as duas pontas:
- Clientes
- Transportadoras
- Compartilhar mudanças / cargas
- Economia compartilhada
- Legislação
- Mercado estabelecido
- Barreira de entrada: Base de usuários
+
Oportunidades e Desafios
- API como estratégia fundamental
- Api com foco no cliente: Clientes
acessando apps
- Api com foco no parceiro: Transportadoras
e donos de caminhões
- Múltiplos dispositivos
+
Estratégia de API First
Code!
Swagger
+
Swagger
+
Geração de Sdk/Client
+
Geração do API Front
+
Postman
+
Mock / Server
+
Carregar Swagger no API Suite
+
Ionic
+
Take Away
A integração do seu sistema
deve ser pensada a partir do
dia zero!
APIs estão nas
agendas e no dia a dia
Quanto mais você
investir no desenho das
APIs, mais atalhos
poderá pegar no futuro
1 of 126

Recommended

Impacto das mega tendências io t, cloud e mobile na arquitetura das grandes e... by
Impacto das mega tendências io t, cloud e mobile na arquitetura das grandes e...Impacto das mega tendências io t, cloud e mobile na arquitetura das grandes e...
Impacto das mega tendências io t, cloud e mobile na arquitetura das grandes e...Fábio Rosato
617 views70 slides
Expondo APIs de back-ends legados e travados by
Expondo APIs de back-ends legados e travadosExpondo APIs de back-ends legados e travados
Expondo APIs de back-ends legados e travadosFábio Rosato
896 views53 slides
APIs Atributos e Tecnologia by
APIs Atributos e TecnologiaAPIs Atributos e Tecnologia
APIs Atributos e TecnologiaFábio Rosato
382 views40 slides
APIs gerenciadas de ponta a ponta by
APIs gerenciadas de ponta a pontaAPIs gerenciadas de ponta a ponta
APIs gerenciadas de ponta a pontaJosé Vahl
1.2K views97 slides
Repensando o ESB: sua arquitetura SOA, usando APIs by
Repensando o ESB: sua arquitetura SOA, usando APIsRepensando o ESB: sua arquitetura SOA, usando APIs
Repensando o ESB: sua arquitetura SOA, usando APIsFábio Rosato
1.1K views33 slides
Indicadores para APIs by
Indicadores para APIsIndicadores para APIs
Indicadores para APIsSensedia
5.5K views59 slides

More Related Content

What's hot

CTOTalks: Escalando de 0 a 1 bilhão de requests com uma infra enxuta by
CTOTalks: Escalando de 0 a 1 bilhão de requests com uma infra enxutaCTOTalks: Escalando de 0 a 1 bilhão de requests com uma infra enxuta
CTOTalks: Escalando de 0 a 1 bilhão de requests com uma infra enxutaRoger Mattos
256 views24 slides
Transformação Digital de Forma Pragmatica WSO2 by
Transformação Digital de Forma Pragmatica WSO2Transformação Digital de Forma Pragmatica WSO2
Transformação Digital de Forma Pragmatica WSO2Edgar Silva
249 views28 slides
WSO2 para o Governo Brasileiro by
WSO2 para o  Governo BrasileiroWSO2 para o  Governo Brasileiro
WSO2 para o Governo BrasileiroEdgar Silva
3.6K views35 slides
Mobile Apps - MeliDevConf 2013 - SP by
Mobile Apps - MeliDevConf 2013 - SPMobile Apps - MeliDevConf 2013 - SP
Mobile Apps - MeliDevConf 2013 - SPmelidevelopers
2.7K views28 slides
Construção de APIs para Apps Móveis by
Construção de APIs para Apps MóveisConstrução de APIs para Apps Móveis
Construção de APIs para Apps MóveisKleber Bacili
444 views55 slides
Ria by
RiaRia
RiaVinícius Pereira
246 views13 slides

What's hot(17)

CTOTalks: Escalando de 0 a 1 bilhão de requests com uma infra enxuta by Roger Mattos
CTOTalks: Escalando de 0 a 1 bilhão de requests com uma infra enxutaCTOTalks: Escalando de 0 a 1 bilhão de requests com uma infra enxuta
CTOTalks: Escalando de 0 a 1 bilhão de requests com uma infra enxuta
Roger Mattos256 views
Transformação Digital de Forma Pragmatica WSO2 by Edgar Silva
Transformação Digital de Forma Pragmatica WSO2Transformação Digital de Forma Pragmatica WSO2
Transformação Digital de Forma Pragmatica WSO2
Edgar Silva249 views
WSO2 para o Governo Brasileiro by Edgar Silva
WSO2 para o  Governo BrasileiroWSO2 para o  Governo Brasileiro
WSO2 para o Governo Brasileiro
Edgar Silva3.6K views
Mobile Apps - MeliDevConf 2013 - SP by melidevelopers
Mobile Apps - MeliDevConf 2013 - SPMobile Apps - MeliDevConf 2013 - SP
Mobile Apps - MeliDevConf 2013 - SP
melidevelopers2.7K views
Construção de APIs para Apps Móveis by Kleber Bacili
Construção de APIs para Apps MóveisConstrução de APIs para Apps Móveis
Construção de APIs para Apps Móveis
Kleber Bacili444 views
Arquitetura de Mensagens Assíncronas - MeliDevConf 2013 - SP by melidevelopers
Arquitetura de Mensagens Assíncronas - MeliDevConf 2013 - SPArquitetura de Mensagens Assíncronas - MeliDevConf 2013 - SP
Arquitetura de Mensagens Assíncronas - MeliDevConf 2013 - SP
melidevelopers2.7K views
Construindo APIs Mobile by Sensedia
Construindo APIs MobileConstruindo APIs Mobile
Construindo APIs Mobile
Sensedia3.3K views
Case Sensedia Catho by Sensedia
Case Sensedia CathoCase Sensedia Catho
Case Sensedia Catho
Sensedia1K views
WSO2 - Visão Geral de Negócios by Edgar Silva
WSO2 - Visão Geral de NegóciosWSO2 - Visão Geral de Negócios
WSO2 - Visão Geral de Negócios
Edgar Silva3.1K views
Libere seus serviços! Transformando serviços existentes em APIs gerenciadas by WSO2
Libere seus serviços! Transformando serviços existentes em APIs gerenciadasLibere seus serviços! Transformando serviços existentes em APIs gerenciadas
Libere seus serviços! Transformando serviços existentes em APIs gerenciadas
WSO21.3K views
Do mapa mental para Serviços de Dados até APIs by WSO2
Do mapa mental para Serviços de Dados até APIsDo mapa mental para Serviços de Dados até APIs
Do mapa mental para Serviços de Dados até APIs
WSO21.4K views
Economia das APIs - Uma visão de negócios by Edgar Silva
Economia das APIs - Uma visão de negóciosEconomia das APIs - Uma visão de negócios
Economia das APIs - Uma visão de negócios
Edgar Silva3.1K views
Modelo de Subscrições e Suporte WSO2 by WSO2
Modelo de Subscrições e Suporte WSO2Modelo de Subscrições e Suporte WSO2
Modelo de Subscrições e Suporte WSO2
WSO21.5K views

Viewers also liked

Waw - Gas by
Waw - GasWaw - Gas
Waw - Gasimpactaeventos
466 views41 slides
PHP Experience 2016 - [Workshop] Agile: Test Driven Development by
PHP Experience 2016 - [Workshop] Agile: Test Driven DevelopmentPHP Experience 2016 - [Workshop] Agile: Test Driven Development
PHP Experience 2016 - [Workshop] Agile: Test Driven DevelopmentiMasters
1K views50 slides
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP by
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHPPHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHPiMasters
1.3K views82 slides
PHP Experience 2016 - [Palestra] Autenticação em APIs by
PHP Experience 2016 - [Palestra] Autenticação em APIsPHP Experience 2016 - [Palestra] Autenticação em APIs
PHP Experience 2016 - [Palestra] Autenticação em APIsiMasters
1.3K views38 slides
PHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSL by
PHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSLPHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSL
PHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSLiMasters
1K views80 slides
PHP Experience 2016 - [Palestra] Keynote: PHP-7 by
PHP Experience 2016 - [Palestra] Keynote: PHP-7PHP Experience 2016 - [Palestra] Keynote: PHP-7
PHP Experience 2016 - [Palestra] Keynote: PHP-7iMasters
1.1K views49 slides

Viewers also liked(10)

PHP Experience 2016 - [Workshop] Agile: Test Driven Development by iMasters
PHP Experience 2016 - [Workshop] Agile: Test Driven DevelopmentPHP Experience 2016 - [Workshop] Agile: Test Driven Development
PHP Experience 2016 - [Workshop] Agile: Test Driven Development
iMasters1K views
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP by iMasters
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHPPHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP
iMasters1.3K views
PHP Experience 2016 - [Palestra] Autenticação em APIs by iMasters
PHP Experience 2016 - [Palestra] Autenticação em APIsPHP Experience 2016 - [Palestra] Autenticação em APIs
PHP Experience 2016 - [Palestra] Autenticação em APIs
iMasters1.3K views
PHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSL by iMasters
PHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSLPHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSL
PHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSL
iMasters1K views
PHP Experience 2016 - [Palestra] Keynote: PHP-7 by iMasters
PHP Experience 2016 - [Palestra] Keynote: PHP-7PHP Experience 2016 - [Palestra] Keynote: PHP-7
PHP Experience 2016 - [Palestra] Keynote: PHP-7
iMasters1.1K views
PHP Experience 2016 - [Workshop] Deploy escalável na Amazon AWS by iMasters
PHP Experience 2016 - [Workshop] Deploy escalável na Amazon AWSPHP Experience 2016 - [Workshop] Deploy escalável na Amazon AWS
PHP Experience 2016 - [Workshop] Deploy escalável na Amazon AWS
iMasters951 views
PHP Experience 2016 - [Palestra] Json Web Token (JWT) by iMasters
PHP Experience 2016 - [Palestra] Json Web Token (JWT)PHP Experience 2016 - [Palestra] Json Web Token (JWT)
PHP Experience 2016 - [Palestra] Json Web Token (JWT)
iMasters2.1K views
PHP Experience 2016 - [Palestra] Rumo à Certificação PHP by iMasters
PHP Experience 2016 - [Palestra] Rumo à Certificação PHPPHP Experience 2016 - [Palestra] Rumo à Certificação PHP
PHP Experience 2016 - [Palestra] Rumo à Certificação PHP
iMasters1.1K views
What I learnt: Elastic search & Kibana : introduction, installtion & configur... by Rahul K Chauhan
What I learnt: Elastic search & Kibana : introduction, installtion & configur...What I learnt: Elastic search & Kibana : introduction, installtion & configur...
What I learnt: Elastic search & Kibana : introduction, installtion & configur...
Rahul K Chauhan1.1K views

Similar to PHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integrações

DevCommerce Conference 2016 - Workshop: Velocidade e confiabilidade em e-comm... by
DevCommerce Conference 2016 - Workshop: Velocidade e confiabilidade em e-comm...DevCommerce Conference 2016 - Workshop: Velocidade e confiabilidade em e-comm...
DevCommerce Conference 2016 - Workshop: Velocidade e confiabilidade em e-comm...iMasters
714 views105 slides
Fatec 2016 - Case Hackathon Campinas by
Fatec 2016 - Case Hackathon CampinasFatec 2016 - Case Hackathon Campinas
Fatec 2016 - Case Hackathon CampinasClaudenir Freitas
85 views35 slides
Deck apix 2017 design & security - case cielo lio by
Deck apix 2017   design & security - case cielo lioDeck apix 2017   design & security - case cielo lio
Deck apix 2017 design & security - case cielo lioLuis Moraes Junior
312 views49 slides
Como um grande sistema REST funciona - arquitetura e desempenho by
Como um grande sistema REST funciona - arquitetura e desempenhoComo um grande sistema REST funciona - arquitetura e desempenho
Como um grande sistema REST funciona - arquitetura e desempenhoDavid Robert Camargo de Campos
3.6K views101 slides
Workshop soa, microservices e devops by
Workshop soa, microservices e devopsWorkshop soa, microservices e devops
Workshop soa, microservices e devopsDiego Pacheco
1.5K views390 slides
PHP nas Nuvens by
PHP nas NuvensPHP nas Nuvens
PHP nas NuvensMarcos Bezerra
1.5K views51 slides

Similar to PHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integrações(20)

DevCommerce Conference 2016 - Workshop: Velocidade e confiabilidade em e-comm... by iMasters
DevCommerce Conference 2016 - Workshop: Velocidade e confiabilidade em e-comm...DevCommerce Conference 2016 - Workshop: Velocidade e confiabilidade em e-comm...
DevCommerce Conference 2016 - Workshop: Velocidade e confiabilidade em e-comm...
iMasters714 views
Deck apix 2017 design & security - case cielo lio by Luis Moraes Junior
Deck apix 2017   design & security - case cielo lioDeck apix 2017   design & security - case cielo lio
Deck apix 2017 design & security - case cielo lio
Luis Moraes Junior312 views
Workshop soa, microservices e devops by Diego Pacheco
Workshop soa, microservices e devopsWorkshop soa, microservices e devops
Workshop soa, microservices e devops
Diego Pacheco1.5K views
Architecture In a Box - Plataforma de Aplicações by Markus Christen
Architecture In a Box - Plataforma de AplicaçõesArchitecture In a Box - Plataforma de Aplicações
Architecture In a Box - Plataforma de Aplicações
Markus Christen605 views
ALM RoadShow SJC - Office 365 API´s by Douglas Romão
ALM RoadShow SJC - Office 365 API´sALM RoadShow SJC - Office 365 API´s
ALM RoadShow SJC - Office 365 API´s
Douglas Romão361 views
SharePoint Framework - Uma plataforma aberta e conectada by Lambda3
SharePoint Framework - Uma plataforma aberta e conectadaSharePoint Framework - Uma plataforma aberta e conectada
SharePoint Framework - Uma plataforma aberta e conectada
Lambda3112 views
Desenvolvimento de Software na Plataforma Microsoft .NET by Gustavo Malheiros
Desenvolvimento de Software na Plataforma Microsoft .NETDesenvolvimento de Software na Plataforma Microsoft .NET
Desenvolvimento de Software na Plataforma Microsoft .NET
TDC 2011 - SharePoint 2010 para Desenvolvedores by Hélio Sá Moreira
TDC 2011 - SharePoint 2010 para DesenvolvedoresTDC 2011 - SharePoint 2010 para Desenvolvedores
TDC 2011 - SharePoint 2010 para Desenvolvedores
Hélio Sá Moreira493 views
Como Planejar a Implantação de SOA by Davi Silva
Como Planejar a Implantação de SOAComo Planejar a Implantação de SOA
Como Planejar a Implantação de SOA
Davi Silva649 views
ASP.Net Performance – A pragmatic approach - Luis Paulino by Comunidade NetPonto
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis Paulino
Comunidade NetPonto1.8K views
WSO2 API Forum Brazil - Adotando APIs e Microserviços com Serverless by WSO2
WSO2 API Forum Brazil - Adotando APIs e Microserviços com Serverless WSO2 API Forum Brazil - Adotando APIs e Microserviços com Serverless
WSO2 API Forum Brazil - Adotando APIs e Microserviços com Serverless
WSO2454 views
Desenvolvimento Orientado a API (e extraindo existentes com PHP) by Flávio Lisboa
Desenvolvimento Orientado a API (e extraindo existentes com PHP)Desenvolvimento Orientado a API (e extraindo existentes com PHP)
Desenvolvimento Orientado a API (e extraindo existentes com PHP)
Flávio Lisboa287 views
Pense Aberto, Pense Linux by aviram
Pense Aberto, Pense LinuxPense Aberto, Pense Linux
Pense Aberto, Pense Linux
aviram1.1K views
Criando Aplicações Serverless - ARC302 - Sao Paulo Summit by Amazon Web Services
Criando Aplicações Serverless -  ARC302 - Sao Paulo SummitCriando Aplicações Serverless -  ARC302 - Sao Paulo Summit
Criando Aplicações Serverless - ARC302 - Sao Paulo Summit
Em desenvolvimento - Gerência de Testes de Software - HTML5 v.7.1 by Gustavo Lopes
Em desenvolvimento - Gerência de Testes de Software - HTML5 v.7.1Em desenvolvimento - Gerência de Testes de Software - HTML5 v.7.1
Em desenvolvimento - Gerência de Testes de Software - HTML5 v.7.1
Gustavo Lopes525 views

More from iMasters

O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro by
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroO que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroiMasters
1.4K views40 slides
Postgres: wanted, beloved or dreaded? - Fabio Telles by
Postgres: wanted, beloved or dreaded? - Fabio TellesPostgres: wanted, beloved or dreaded? - Fabio Telles
Postgres: wanted, beloved or dreaded? - Fabio TellesiMasters
603 views51 slides
Por que minha query esta lenta? - Suellen Moraes by
Por que minha query esta lenta? - Suellen MoraesPor que minha query esta lenta? - Suellen Moraes
Por que minha query esta lenta? - Suellen MoraesiMasters
370 views12 slides
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig... by
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...iMasters
298 views9 slides
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves by
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalvesORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalvesiMasters
324 views31 slides
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -... by
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...iMasters
1.7K views52 slides

More from iMasters(20)

O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro by iMasters
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroO que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
iMasters1.4K views
Postgres: wanted, beloved or dreaded? - Fabio Telles by iMasters
Postgres: wanted, beloved or dreaded? - Fabio TellesPostgres: wanted, beloved or dreaded? - Fabio Telles
Postgres: wanted, beloved or dreaded? - Fabio Telles
iMasters603 views
Por que minha query esta lenta? - Suellen Moraes by iMasters
Por que minha query esta lenta? - Suellen MoraesPor que minha query esta lenta? - Suellen Moraes
Por que minha query esta lenta? - Suellen Moraes
iMasters370 views
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig... by iMasters
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
iMasters298 views
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves by iMasters
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalvesORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
iMasters324 views
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -... by iMasters
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
iMasters1.7K views
Arquitetando seus dados na prática para a LGPD - Alessandra Martins by iMasters
Arquitetando seus dados na prática para a LGPD - Alessandra MartinsArquitetando seus dados na prática para a LGPD - Alessandra Martins
Arquitetando seus dados na prática para a LGPD - Alessandra Martins
iMasters3.3K views
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil... by iMasters
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...
iMasters287 views
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud by iMasters
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana ChahoudDesenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud
iMasters950 views
Use MDD e faça as máquinas trabalharem para você - Andreza Leite by iMasters
 Use MDD e faça as máquinas trabalharem para você - Andreza Leite Use MDD e faça as máquinas trabalharem para você - Andreza Leite
Use MDD e faça as máquinas trabalharem para você - Andreza Leite
iMasters682 views
Entendendo os porquês do seu servidor - Talita Bernardes by iMasters
Entendendo os porquês do seu servidor - Talita BernardesEntendendo os porquês do seu servidor - Talita Bernardes
Entendendo os porquês do seu servidor - Talita Bernardes
iMasters544 views
Backend performático além do "coloca mais máquina lá" - Diana Arnos by iMasters
Backend performático além do "coloca mais máquina lá" - Diana ArnosBackend performático além do "coloca mais máquina lá" - Diana Arnos
Backend performático além do "coloca mais máquina lá" - Diana Arnos
iMasters477 views
Dicas para uma maior performance em APIs REST - Renato Groffe by iMasters
Dicas para uma maior performance em APIs REST - Renato GroffeDicas para uma maior performance em APIs REST - Renato Groffe
Dicas para uma maior performance em APIs REST - Renato Groffe
iMasters595 views
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro by iMasters
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro7 dicas de desempenho que equivalem por 21 - Danielle Monteiro
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro
iMasters475 views
Quem se importa com acessibilidade Web? - Mauricio Maujor by iMasters
Quem se importa com acessibilidade Web? - Mauricio MaujorQuem se importa com acessibilidade Web? - Mauricio Maujor
Quem se importa com acessibilidade Web? - Mauricio Maujor
iMasters480 views
Service Mesh com Istio e Kubernetes - Wellington Figueira da Silva by iMasters
Service Mesh com Istio e Kubernetes - Wellington Figueira da SilvaService Mesh com Istio e Kubernetes - Wellington Figueira da Silva
Service Mesh com Istio e Kubernetes - Wellington Figueira da Silva
iMasters604 views
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti by iMasters
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto PascuttiErros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti
iMasters559 views
Elasticidade e engenharia de banco de dados para alta performance - Rubens G... by iMasters
Elasticidade e engenharia de banco de dados para alta performance  - Rubens G...Elasticidade e engenharia de banco de dados para alta performance  - Rubens G...
Elasticidade e engenharia de banco de dados para alta performance - Rubens G...
iMasters569 views
Construindo aplicações mais confiantes - Carolina Karklis by iMasters
Construindo aplicações mais confiantes - Carolina KarklisConstruindo aplicações mais confiantes - Carolina Karklis
Construindo aplicações mais confiantes - Carolina Karklis
iMasters477 views
Monitoramento de Aplicações - Felipe Regalgo by iMasters
Monitoramento de Aplicações - Felipe RegalgoMonitoramento de Aplicações - Felipe Regalgo
Monitoramento de Aplicações - Felipe Regalgo
iMasters709 views

Recently uploaded

Passado uma semana após o parto, Beatriz marcou uma consulta médica para seu ... by
Passado uma semana após o parto, Beatriz marcou uma consulta médica para seu ...Passado uma semana após o parto, Beatriz marcou uma consulta médica para seu ...
Passado uma semana após o parto, Beatriz marcou uma consulta médica para seu ...azulassessoriaacadem3
35 views4 slides
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi... by
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...HelpEducacional
68 views3 slides
REVISÃO PARA O PROVÃO DE HISTÓRIA.pptx by
REVISÃO PARA O PROVÃO DE HISTÓRIA.pptxREVISÃO PARA O PROVÃO DE HISTÓRIA.pptx
REVISÃO PARA O PROVÃO DE HISTÓRIA.pptxprofesfrancleite
48 views10 slides
5) Anexo do folder e da foto de distribuição do folder: Após elaborado o fold... by
5) Anexo do folder e da foto de distribuição do folder: Após elaborado o fold...5) Anexo do folder e da foto de distribuição do folder: Após elaborado o fold...
5) Anexo do folder e da foto de distribuição do folder: Após elaborado o fold...azulassessoriaacadem3
43 views3 slides
2 - Você estudou as principais teorias pedagógicas para prática de educação. ... by
2 - Você estudou as principais teorias pedagógicas para prática de educação. ...2 - Você estudou as principais teorias pedagógicas para prática de educação. ...
2 - Você estudou as principais teorias pedagógicas para prática de educação. ...azulassessoriaacadem3
140 views3 slides
b) Explique os componentes das valvas cardíacas e o seu funcionamento durante... by
b) Explique os componentes das valvas cardíacas e o seu funcionamento durante...b) Explique os componentes das valvas cardíacas e o seu funcionamento durante...
b) Explique os componentes das valvas cardíacas e o seu funcionamento durante...HelpEducacional
49 views4 slides

Recently uploaded(20)

Passado uma semana após o parto, Beatriz marcou uma consulta médica para seu ... by azulassessoriaacadem3
Passado uma semana após o parto, Beatriz marcou uma consulta médica para seu ...Passado uma semana após o parto, Beatriz marcou uma consulta médica para seu ...
Passado uma semana após o parto, Beatriz marcou uma consulta médica para seu ...
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi... by HelpEducacional
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...
HelpEducacional68 views
REVISÃO PARA O PROVÃO DE HISTÓRIA.pptx by profesfrancleite
REVISÃO PARA O PROVÃO DE HISTÓRIA.pptxREVISÃO PARA O PROVÃO DE HISTÓRIA.pptx
REVISÃO PARA O PROVÃO DE HISTÓRIA.pptx
profesfrancleite48 views
5) Anexo do folder e da foto de distribuição do folder: Após elaborado o fold... by azulassessoriaacadem3
5) Anexo do folder e da foto de distribuição do folder: Após elaborado o fold...5) Anexo do folder e da foto de distribuição do folder: Após elaborado o fold...
5) Anexo do folder e da foto de distribuição do folder: Após elaborado o fold...
2 - Você estudou as principais teorias pedagógicas para prática de educação. ... by azulassessoriaacadem3
2 - Você estudou as principais teorias pedagógicas para prática de educação. ...2 - Você estudou as principais teorias pedagógicas para prática de educação. ...
2 - Você estudou as principais teorias pedagógicas para prática de educação. ...
b) Explique os componentes das valvas cardíacas e o seu funcionamento durante... by HelpEducacional
b) Explique os componentes das valvas cardíacas e o seu funcionamento durante...b) Explique os componentes das valvas cardíacas e o seu funcionamento durante...
b) Explique os componentes das valvas cardíacas e o seu funcionamento durante...
HelpEducacional49 views
1a. DIFERENCIE, o princípio físico na formação da imagem para método de tomog... by azulassessoriaacadem3
1a. DIFERENCIE, o princípio físico na formação da imagem para método de tomog...1a. DIFERENCIE, o princípio físico na formação da imagem para método de tomog...
1a. DIFERENCIE, o princípio físico na formação da imagem para método de tomog...
Ao refletir sobre a importância da idealização de práticas inovadoras na Educ... by azulassessoriaacadem3
Ao refletir sobre a importância da idealização de práticas inovadoras na Educ...Ao refletir sobre a importância da idealização de práticas inovadoras na Educ...
Ao refletir sobre a importância da idealização de práticas inovadoras na Educ...
3. Os vídeos “Filha de pais surdos dá lição de amor” e “Cadela aprende libras... by azulassessoriaacadem3
3. Os vídeos “Filha de pais surdos dá lição de amor” e “Cadela aprende libras...3. Os vídeos “Filha de pais surdos dá lição de amor” e “Cadela aprende libras...
3. Os vídeos “Filha de pais surdos dá lição de amor” e “Cadela aprende libras...
Etapa 3: agora chegou o momento de você sugerir a aquisição ou não do equipam... by azulassessoriaacadem3
Etapa 3: agora chegou o momento de você sugerir a aquisição ou não do equipam...Etapa 3: agora chegou o momento de você sugerir a aquisição ou não do equipam...
Etapa 3: agora chegou o momento de você sugerir a aquisição ou não do equipam...
a) Elenque de forma sucinta as dificuldades apresentadas no relato do caso e ... by azulassessoriaacadem3
a) Elenque de forma sucinta as dificuldades apresentadas no relato do caso e ...a) Elenque de forma sucinta as dificuldades apresentadas no relato do caso e ...
a) Elenque de forma sucinta as dificuldades apresentadas no relato do caso e ...
3) Os AINEs são classificados de acordo com sua composição química. A esse re... by HelpEducacional
3) Os AINEs são classificados de acordo com sua composição química. A esse re...3) Os AINEs são classificados de acordo com sua composição química. A esse re...
3) Os AINEs são classificados de acordo com sua composição química. A esse re...
HelpEducacional132 views
Slides Lição 12, CPAD, O Modelo de Missões da Igreja de Antioquia.pptx by LuizHenriquedeAlmeid6
Slides Lição 12, CPAD, O Modelo de Missões da Igreja de Antioquia.pptxSlides Lição 12, CPAD, O Modelo de Missões da Igreja de Antioquia.pptx
Slides Lição 12, CPAD, O Modelo de Missões da Igreja de Antioquia.pptx
b) Caso n. 02: Considerando o disposto na NBC PG 01 – Código de Ética Profiss... by azulassessoriaacadem3
b) Caso n. 02: Considerando o disposto na NBC PG 01 – Código de Ética Profiss...b) Caso n. 02: Considerando o disposto na NBC PG 01 – Código de Ética Profiss...
b) Caso n. 02: Considerando o disposto na NBC PG 01 – Código de Ética Profiss...
Você é um(a) assistente social trabalhando em um Centro de Referência da Assi... by azulassessoriaacadem3
Você é um(a) assistente social trabalhando em um Centro de Referência da Assi...Você é um(a) assistente social trabalhando em um Centro de Referência da Assi...
Você é um(a) assistente social trabalhando em um Centro de Referência da Assi...
LISTE cinco condições clínicas e para cada uma delas CITE as metas/objetivos ... by azulassessoriaacadem3
LISTE cinco condições clínicas e para cada uma delas CITE as metas/objetivos ...LISTE cinco condições clínicas e para cada uma delas CITE as metas/objetivos ...
LISTE cinco condições clínicas e para cada uma delas CITE as metas/objetivos ...
CONSTRUA UM TEXTO ARGUMENTATIVO que explique: por que os materiais cerâmicos ... by azulassessoriaacadem3
CONSTRUA UM TEXTO ARGUMENTATIVO que explique: por que os materiais cerâmicos ...CONSTRUA UM TEXTO ARGUMENTATIVO que explique: por que os materiais cerâmicos ...
CONSTRUA UM TEXTO ARGUMENTATIVO que explique: por que os materiais cerâmicos ...
a) Elenque de forma sucinta as dificuldades apresentadas no relato do caso e ... by azulassessoriaacadem3
a) Elenque de forma sucinta as dificuldades apresentadas no relato do caso e ...a) Elenque de forma sucinta as dificuldades apresentadas no relato do caso e ...
a) Elenque de forma sucinta as dificuldades apresentadas no relato do caso e ...

PHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integrações