SlideShare una empresa de Scribd logo
1 de 51
Web Services REST com Zend Framework Fernando Geraldo Mantoan Jurmir Canal Neto
WEB SERVICES http://www.flickr.com/photos/psd/263092176
Sistema Distribuído http://www.sysadminday.com/images/horror/Mark.Zo_moet_het_niet.JPG
Comunicação entre aplicações http://www.textually.org/textually/archives/images/set3/phone-string-plastic-cup.jpg
Interoperabilidade http://www.flickr.com/photos/jblndl/2456767724/
Funções empacotadas e publicadas http://www.flickr.com/photos/mybloodyself/3756170950
SOAP http://www.flickr.com/photos/modernemily/63701/
Protocolo de acesso simples a objetos http://www.flickr.com/photos/dullhunk/327124208
W3C Standard http://www.flickr.com/photos/zopeuse/60106078
Independente de plataforma e linguagem http://www.flickr.com/photos/lambdageek/40535379
WSDL http://www.flickr.com/photos/tiny_packages/3996794712
Mas o SOAP também tem problemas http://www.flickr.com/photos/santheo/149090931
UDDI é uma lenda http://upload.wikimedia.org/wikipedia/commons/5/53/Pict2551-Monster-640x480.jpg
SOAP é Burocrático e Pesado http://4.bp.blogspot.com/_Sb9fMZwGzIw/SStN5nAEo8I/AAAAAAAABcs/V5QxpR0E_MQ/s320/burocracia.jpg
 
REST http://www.flickr.com/photos/34748725@N00/3361411649/
Transferência de Estado Representacional http://www.flickr.com/photos/vshioshvili/234727120/
Protocolo HTTP http://www.flickr.com/photos/candescence/2269157627
Métodos RESTful
Recursos, URI e ROA http://www.acf-fr.org/i/08-01-17_money8.jpg
latinoware.org/palestras/001 Retorna o Estado Representacional da palestra com id 001 http://www.networkmarketingtitans.com/dollar%20bill%202.jpg
latinoware.org/palestras Retorna uma coleção de palestras http://www.nicolewilliams.com/nw-images/subcat_imgs/TalkingAboutMoney.jpg
JSON http://www.flickr.com/photos/ibtrav/1307287009
 
 
XML = 646 Caracteres JSON = 381 Caracteres Diferença = 265 Caracteres
Mas o REST também tem Problemas http://www.flickr.com/photos/rickmccharles/2269842297/
Não é padronizado http://www.rakewell.com/images/wrong_plug.gif
HTML 4 e o suporte ao HTTP  http://www.flickr.com/photos/thefangmonster/490423135
Métodos RESTful
REST VS SOAP http://theinspirationroom.com/daily/print/2009/2/aliens_vs_predator_chess.jpg
http://nicolas-zozol.developpez.com/tutorial/java/rest-jsp-english/images/Rest_vs_Soap.png
PHP + REST http://www.flickr.com/photos/jordanmerrick/3248404110/
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
Filosofias parecidas http://polemarchus.files.wordpress.com/2009/01/grubleren2.jpg
http://leocorrea.files.wordpress.com/2008/07/web2.jpg http://www.sarahgbennett.com/MyWonderings/wp-content/uploads/2009/09/social-media-landscape.png http://www.jf.eti.br/downloads/web2ilustrada.jpg
Zend Framework http://www.flickr.com/photos/calevans/1716641542/
Zend + PHP = (L) http://www.flickr.com/photos/jhherren/104065111/
Baixa curva de aprendizagem;  Feeds;   Testes Unitários;  Design Moderno;   Documentação Completa; http://www.flickr.com/photos/calevans/1716641542/
 
Zend Framework + REST http://www.flickr.com/photos/estherase/128983854/
Zend_Rest_Client: Métodos Remotos = Métodos Nativos; get(), post(), put(), delete(). Zend_Rest_Server: Servidor REST com recursos completos; GET, POST; XML. http://www.flickr.com/photos/estherase/128983854/
Problemas: Server e Client != RESTFul design; Server nativamente suporta somente XML; Server nativamente permite GET e POST; Somando tudo: Planos para descontinuar! http://www.flickr.com/photos/estherase/128983854/
Zend_Http_Client: Interface simples para métodos HTTP; Recursos simples; Recursos avançados (Autenticação Envio de Arquivos); Zend_Http_Response (Headers, Body). http://www.flickr.com/photos/extraketchup/3680966219/
Zend_Rest_Controller: Rotas RESTFul (URI + Recursos); /produtos/ (GET) - Retorna todos os produtos; /produtos/1 (GET) - Retorna o produto de id 1; /produtos/ (POST) - Insere novo produto. /produtos/1 (PUT) - Atualiza o produto de id 1; /produtos/1 (DELETE) - Exclui o produto de id 1. indexAction(), getAction(), postAction(), putAction(), deleteAction(). http://www.flickr.com/photos/jamisonjudd/2433102356/
Um pouco de código http://www.flickr.com/photos/e2/2244075454/
Só isso? http://www.flickr.com/photos/foamcow/34055184/
http://www.flickr.com/photos/markgriffioen/183745131/ Serviços de Terceiros:   Zend_Service_Akismet;  Zend_Service_Delicious;   Zend_Service_Amazon;  Zend_Service_Flickr;   Zend_Service_Twitter;  Zend_Service_Yahoo;   Outros Componentes:   Zend_Soap_Client;  Zend_Soap_Server;   Zend_Soap_Wsdl;  Zend_XmlRpc.
Perguntas? http://www.flickr.com/photos/oberazzi/318947873/
Referências: LISBOA, Flávio G. da S. Zend Framework – Componentes Poderosos para PHP. Novatec. http://framework.zend.com http://framework.zend.com/wiki/display/ZFPROP/Zend_Controller_Router_Route_Rest+-+Luke+Crouch?focusedCommentId=8947407 http://www.flickr.com/photos/calevans/1732671937/
Obrigado! http://fernandomantoan.com http://jcanalneto.wordpress.com

Más contenido relacionado

Destacado

Soa business centric and soap basic
Soa business centric and soap basicSoa business centric and soap basic
Soa business centric and soap basicJothi Lakshmi
 
Splunking HL7 Healthcare Data for Business Value
Splunking HL7 Healthcare Data for Business ValueSplunking HL7 Healthcare Data for Business Value
Splunking HL7 Healthcare Data for Business ValueSplunk
 
Ebs soa con8716_pdf_8716_0001
Ebs soa con8716_pdf_8716_0001Ebs soa con8716_pdf_8716_0001
Ebs soa con8716_pdf_8716_0001jucaab
 
Improvements in Hadoop Security
Improvements in Hadoop SecurityImprovements in Hadoop Security
Improvements in Hadoop SecurityDataWorks Summit
 
Is Your Hadoop Environment Secure?
Is Your Hadoop Environment Secure?Is Your Hadoop Environment Secure?
Is Your Hadoop Environment Secure?Datameer
 
Automated Testing for BizTalk HL7 Solutions
Automated Testing for BizTalk HL7 SolutionsAutomated Testing for BizTalk HL7 Solutions
Automated Testing for BizTalk HL7 SolutionsMichael Stephenson
 
Description of soa and SOAP,WSDL & UDDI
Description of soa and SOAP,WSDL & UDDIDescription of soa and SOAP,WSDL & UDDI
Description of soa and SOAP,WSDL & UDDITUSHAR VARSHNEY
 
Limitless Data, Rapid Discovery, Powerful Insight: How to Connect Cloudera to...
Limitless Data, Rapid Discovery, Powerful Insight: How to Connect Cloudera to...Limitless Data, Rapid Discovery, Powerful Insight: How to Connect Cloudera to...
Limitless Data, Rapid Discovery, Powerful Insight: How to Connect Cloudera to...Cloudera, Inc.
 
Securing Hadoop's REST APIs with Apache Knox Gateway Hadoop Summit June 6th, ...
Securing Hadoop's REST APIs with Apache Knox Gateway Hadoop Summit June 6th, ...Securing Hadoop's REST APIs with Apache Knox Gateway Hadoop Summit June 6th, ...
Securing Hadoop's REST APIs with Apache Knox Gateway Hadoop Summit June 6th, ...Kevin Minder
 
Back to basics: Simple database web services without the need for SOA
Back to basics: Simple database web services without the need for SOABack to basics: Simple database web services without the need for SOA
Back to basics: Simple database web services without the need for SOASage Computing Services
 
Introduction to WebSphere Message Broker
Introduction to WebSphere Message BrokerIntroduction to WebSphere Message Broker
Introduction to WebSphere Message BrokerAnt Phillips
 
How to use Innovative Architectures for Digital Enterprises
How to use Innovative Architectures for Digital EnterprisesHow to use Innovative Architectures for Digital Enterprises
How to use Innovative Architectures for Digital EnterprisesCapgemini
 
Workflow and BPM in the New Enterprise Architecture
Workflow and BPM in the New Enterprise ArchitectureWorkflow and BPM in the New Enterprise Architecture
Workflow and BPM in the New Enterprise ArchitectureNathaniel Palmer
 
Business intelligence systems
Business intelligence systemsBusiness intelligence systems
Business intelligence systemsUMaine
 
[PPT] Hospital management system - Quanta-his
[PPT] Hospital management system - Quanta-his[PPT] Hospital management system - Quanta-his
[PPT] Hospital management system - Quanta-hisBirlamedisoft Pvt. Ltd
 
Building an Effective Data Warehouse Architecture
Building an Effective Data Warehouse ArchitectureBuilding an Effective Data Warehouse Architecture
Building an Effective Data Warehouse ArchitectureJames Serra
 
An introduction to fundamental architecture concepts
An introduction to fundamental architecture conceptsAn introduction to fundamental architecture concepts
An introduction to fundamental architecture conceptswweinmeyer79
 

Destacado (18)

Soa business centric and soap basic
Soa business centric and soap basicSoa business centric and soap basic
Soa business centric and soap basic
 
Splunking HL7 Healthcare Data for Business Value
Splunking HL7 Healthcare Data for Business ValueSplunking HL7 Healthcare Data for Business Value
Splunking HL7 Healthcare Data for Business Value
 
Ebs soa con8716_pdf_8716_0001
Ebs soa con8716_pdf_8716_0001Ebs soa con8716_pdf_8716_0001
Ebs soa con8716_pdf_8716_0001
 
Improvements in Hadoop Security
Improvements in Hadoop SecurityImprovements in Hadoop Security
Improvements in Hadoop Security
 
Is Your Hadoop Environment Secure?
Is Your Hadoop Environment Secure?Is Your Hadoop Environment Secure?
Is Your Hadoop Environment Secure?
 
Automated Testing for BizTalk HL7 Solutions
Automated Testing for BizTalk HL7 SolutionsAutomated Testing for BizTalk HL7 Solutions
Automated Testing for BizTalk HL7 Solutions
 
Description of soa and SOAP,WSDL & UDDI
Description of soa and SOAP,WSDL & UDDIDescription of soa and SOAP,WSDL & UDDI
Description of soa and SOAP,WSDL & UDDI
 
Limitless Data, Rapid Discovery, Powerful Insight: How to Connect Cloudera to...
Limitless Data, Rapid Discovery, Powerful Insight: How to Connect Cloudera to...Limitless Data, Rapid Discovery, Powerful Insight: How to Connect Cloudera to...
Limitless Data, Rapid Discovery, Powerful Insight: How to Connect Cloudera to...
 
Securing Hadoop's REST APIs with Apache Knox Gateway Hadoop Summit June 6th, ...
Securing Hadoop's REST APIs with Apache Knox Gateway Hadoop Summit June 6th, ...Securing Hadoop's REST APIs with Apache Knox Gateway Hadoop Summit June 6th, ...
Securing Hadoop's REST APIs with Apache Knox Gateway Hadoop Summit June 6th, ...
 
Back to basics: Simple database web services without the need for SOA
Back to basics: Simple database web services without the need for SOABack to basics: Simple database web services without the need for SOA
Back to basics: Simple database web services without the need for SOA
 
080827 abramson inmon vs kimball
080827 abramson   inmon vs kimball080827 abramson   inmon vs kimball
080827 abramson inmon vs kimball
 
Introduction to WebSphere Message Broker
Introduction to WebSphere Message BrokerIntroduction to WebSphere Message Broker
Introduction to WebSphere Message Broker
 
How to use Innovative Architectures for Digital Enterprises
How to use Innovative Architectures for Digital EnterprisesHow to use Innovative Architectures for Digital Enterprises
How to use Innovative Architectures for Digital Enterprises
 
Workflow and BPM in the New Enterprise Architecture
Workflow and BPM in the New Enterprise ArchitectureWorkflow and BPM in the New Enterprise Architecture
Workflow and BPM in the New Enterprise Architecture
 
Business intelligence systems
Business intelligence systemsBusiness intelligence systems
Business intelligence systems
 
[PPT] Hospital management system - Quanta-his
[PPT] Hospital management system - Quanta-his[PPT] Hospital management system - Quanta-his
[PPT] Hospital management system - Quanta-his
 
Building an Effective Data Warehouse Architecture
Building an Effective Data Warehouse ArchitectureBuilding an Effective Data Warehouse Architecture
Building an Effective Data Warehouse Architecture
 
An introduction to fundamental architecture concepts
An introduction to fundamental architecture conceptsAn introduction to fundamental architecture concepts
An introduction to fundamental architecture concepts
 

Similar a Zend Framework REST Services

PHP RESTful Web Services - PHPConf'09
PHP RESTful Web Services - PHPConf'09PHP RESTful Web Services - PHPConf'09
PHP RESTful Web Services - PHPConf'09Felipe Ribeiro
 
Analise frameworks php
Analise frameworks phpAnalise frameworks php
Analise frameworks phpIgor Moura
 
Desenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2pyDesenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2pyRelsi Maron
 
ZF Básico - 1. Introdução
ZF Básico - 1. IntroduçãoZF Básico - 1. Introdução
ZF Básico - 1. IntroduçãoMarcos Bezerra
 
Frameworks de Desenvolvimento Web com PHP
Frameworks de Desenvolvimento Web com PHPFrameworks de Desenvolvimento Web com PHP
Frameworks de Desenvolvimento Web com PHPElton Minetto
 
Microsoft Community Launch 2010: .NET Framework 4
Microsoft Community Launch 2010: .NET Framework 4Microsoft Community Launch 2010: .NET Framework 4
Microsoft Community Launch 2010: .NET Framework 4Rogério Moraes de Carvalho
 
Técnicas e recursos para desenvolvimento Web em cenários de grande escala
Técnicas e recursos para desenvolvimento Web em cenários de grande escalaTécnicas e recursos para desenvolvimento Web em cenários de grande escala
Técnicas e recursos para desenvolvimento Web em cenários de grande escalaAlexandre Tarifa
 
Phalcon FrameWork - Considerações Iniciais
Phalcon FrameWork - Considerações IniciaisPhalcon FrameWork - Considerações Iniciais
Phalcon FrameWork - Considerações IniciaisPauloRobertoBolsanel
 
TDC2015 Porto Alegre - Interfaces ricas com Rails e React.JS
TDC2015  Porto Alegre - Interfaces ricas com Rails e React.JSTDC2015  Porto Alegre - Interfaces ricas com Rails e React.JS
TDC2015 Porto Alegre - Interfaces ricas com Rails e React.JSRodrigo Urubatan
 
Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...
Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...
Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...Tchelinux
 
Uma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIUma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIComunidade NetPonto
 
Do Rest Ao Restfull - Rio Jug
Do Rest Ao Restfull - Rio JugDo Rest Ao Restfull - Rio Jug
Do Rest Ao Restfull - Rio JugSergio Azevedo
 
JSF 2.0 e ScrumToys
JSF 2.0 e ScrumToysJSF 2.0 e ScrumToys
JSF 2.0 e ScrumToysDr. Spock
 
O que esperar do Zend Framework 3
O que esperar do Zend Framework 3O que esperar do Zend Framework 3
O que esperar do Zend Framework 3Flávio Lisboa
 
Como escolher o Framework Java para web?
Como escolher o Framework Java para web?Como escolher o Framework Java para web?
Como escolher o Framework Java para web?Anderson Araújo
 

Similar a Zend Framework REST Services (20)

PHP RESTful Web Services - PHPConf'09
PHP RESTful Web Services - PHPConf'09PHP RESTful Web Services - PHPConf'09
PHP RESTful Web Services - PHPConf'09
 
Analise frameworks php
Analise frameworks phpAnalise frameworks php
Analise frameworks php
 
Desenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2pyDesenvolvimento web ágil com python e web2py
Desenvolvimento web ágil com python e web2py
 
Rest workshop
Rest workshopRest workshop
Rest workshop
 
ZF Básico - 1. Introdução
ZF Básico - 1. IntroduçãoZF Básico - 1. Introdução
ZF Básico - 1. Introdução
 
Frameworks de Desenvolvimento Web com PHP
Frameworks de Desenvolvimento Web com PHPFrameworks de Desenvolvimento Web com PHP
Frameworks de Desenvolvimento Web com PHP
 
Microsoft Community Launch 2010: .NET Framework 4
Microsoft Community Launch 2010: .NET Framework 4Microsoft Community Launch 2010: .NET Framework 4
Microsoft Community Launch 2010: .NET Framework 4
 
Técnicas e recursos para desenvolvimento Web em cenários de grande escala
Técnicas e recursos para desenvolvimento Web em cenários de grande escalaTécnicas e recursos para desenvolvimento Web em cenários de grande escala
Técnicas e recursos para desenvolvimento Web em cenários de grande escala
 
Phalcon FrameWork - Considerações Iniciais
Phalcon FrameWork - Considerações IniciaisPhalcon FrameWork - Considerações Iniciais
Phalcon FrameWork - Considerações Iniciais
 
W2py pyconpe
W2py pyconpeW2py pyconpe
W2py pyconpe
 
Rest Teoria E Pratica
Rest Teoria E PraticaRest Teoria E Pratica
Rest Teoria E Pratica
 
TDC2015 Porto Alegre - Interfaces ricas com Rails e React.JS
TDC2015  Porto Alegre - Interfaces ricas com Rails e React.JSTDC2015  Porto Alegre - Interfaces ricas com Rails e React.JS
TDC2015 Porto Alegre - Interfaces ricas com Rails e React.JS
 
Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...
Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...
Iniciando com Yii Framework - Volmar Machado da Silva Neto (Rede Pampa de Com...
 
Uma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web APIUma Introdução a ASP.NET Web API
Uma Introdução a ASP.NET Web API
 
Do Rest Ao Restfull - Rio Jug
Do Rest Ao Restfull - Rio JugDo Rest Ao Restfull - Rio Jug
Do Rest Ao Restfull - Rio Jug
 
JSF 2.0 e ScrumToys
JSF 2.0 e ScrumToysJSF 2.0 e ScrumToys
JSF 2.0 e ScrumToys
 
O que esperar do Zend Framework 3
O que esperar do Zend Framework 3O que esperar do Zend Framework 3
O que esperar do Zend Framework 3
 
Ambiente e Infraestrutura
Ambiente e InfraestruturaAmbiente e Infraestrutura
Ambiente e Infraestrutura
 
Como escolher o Framework Java para web?
Como escolher o Framework Java para web?Como escolher o Framework Java para web?
Como escolher o Framework Java para web?
 
Minicurso Smsi
Minicurso SmsiMinicurso Smsi
Minicurso Smsi
 

Más de Fernando Geraldo Mantoan

Banca: Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizan...
Banca: Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizan...Banca: Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizan...
Banca: Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizan...Fernando Geraldo Mantoan
 
Banca: Estudo de Caso de uma Estrutura de Autenticação Única utilizando o pro...
Banca: Estudo de Caso de uma Estrutura de Autenticação Única utilizando o pro...Banca: Estudo de Caso de uma Estrutura de Autenticação Única utilizando o pro...
Banca: Estudo de Caso de uma Estrutura de Autenticação Única utilizando o pro...Fernando Geraldo Mantoan
 
Estudo de Caso de uma Estrutura de Autenticação Única utilizando o protocolo ...
Estudo de Caso de uma Estrutura de Autenticação Única utilizando o protocolo ...Estudo de Caso de uma Estrutura de Autenticação Única utilizando o protocolo ...
Estudo de Caso de uma Estrutura de Autenticação Única utilizando o protocolo ...Fernando Geraldo Mantoan
 
Desfrutando os Componentes do Zend Framework
Desfrutando os Componentes do Zend FrameworkDesfrutando os Componentes do Zend Framework
Desfrutando os Componentes do Zend FrameworkFernando Geraldo Mantoan
 
Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizando Desi...
Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizando Desi...Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizando Desi...
Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizando Desi...Fernando Geraldo Mantoan
 

Más de Fernando Geraldo Mantoan (6)

Banca: Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizan...
Banca: Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizan...Banca: Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizan...
Banca: Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizan...
 
Banca: Estudo de Caso de uma Estrutura de Autenticação Única utilizando o pro...
Banca: Estudo de Caso de uma Estrutura de Autenticação Única utilizando o pro...Banca: Estudo de Caso de uma Estrutura de Autenticação Única utilizando o pro...
Banca: Estudo de Caso de uma Estrutura de Autenticação Única utilizando o pro...
 
Estudo de Caso de uma Estrutura de Autenticação Única utilizando o protocolo ...
Estudo de Caso de uma Estrutura de Autenticação Única utilizando o protocolo ...Estudo de Caso de uma Estrutura de Autenticação Única utilizando o protocolo ...
Estudo de Caso de uma Estrutura de Autenticação Única utilizando o protocolo ...
 
Desfrutando os Componentes do Zend Framework
Desfrutando os Componentes do Zend FrameworkDesfrutando os Componentes do Zend Framework
Desfrutando os Componentes do Zend Framework
 
Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizando Desi...
Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizando Desi...Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizando Desi...
Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizando Desi...
 
PHP, Mercado e Certificações
PHP, Mercado e CertificaçõesPHP, Mercado e Certificações
PHP, Mercado e Certificações
 

Zend Framework REST Services