SlideShare uma empresa Scribd logo
1 de 96
Rest in Practice:
Hypermedia e Cache
     Guilherme Silveira
     @guilhermecaelum
Guilherme Silveira
11 years, 1992: “Basic”
2002 guj.com.br
 2003 vraptor
2004 extreme programming
       2006 scrum
           ...
2009 restfulie




http://restfulie.caelumobjects.com/
2010 tectura




http://www.tectura.com.br
2004 caelum - daily life




    www.caelum.com.br
blogs


    blog.caelum.com.br
agilenomundoreal.com.br
 blog.caelumobjects.com
bank.com
bank.com   calendar.com
bank.com     calendar.com




travel.com
bank.com     calendar.com




travel.com   company.com
bank.com     calendar.com




travel.com   company.com
what is the future
 of integration
 over the web?
what was REST?
Restful Web


              Services
Restful Web

create a saas account

                        Services
Restful Web

create a saas account


   freeze account
                        Services
Restful Web

create a saas account


   freeze account
                        Services

 reactivate account
Web




Restful         Services
Web
          http




Restful          Services
Web
           http

          port 80




Restful             Services
Web
           http

          port 80


      firewall heaven


Restful             Services
Web Services


Restful
Web Services

             xml, json
Restful
Web Services

              xml, json
Restful
             get, post, ...
DESAFIO 1
rest
     =
web services
não
unresttrips.com: flight details



<?xml version="1.0" encoding="UTF-8" standalum="yes"?>
<flight>
  <information>
    <from>sao paulo</from>
    <to>seoul</to>
  </information>
  <value>900.00</value>
</flight>
service locator when integrating:
                         coupling++

                            unrest
                             pay


                    unresttrips.com

 guilherme
service locator when integrating:
                         coupling++

                            unrest
                             pay


                    unresttrips.com

 guilherme
resttrips.com: flight details



<?xml version="1.0" encoding="UTF-8" standalum="yes"?>
<flight>
  <information>
    <from>sao paulo</from>
    <to>seoul</to>
  </information>
  <value>900.00</value>
  <link rel="payment"
              href="http://resttrips.com/payment/custom"/
</flight>
resttrips.com: making the payment




flight = Client.at('http://resttrips.com/f/574XR4').get();

confirmation = flight.getLink("payment").
                  patch(cardInformation, value);
resttrips.com: changing its payment provider


<?xml version="1.0" encoding="UTF-8" standalum="yes"?>
<flight>
  <information>
    <from>sao paulo</from>
    <to>seoul</to>
  </information>
  <value>900.00</value>
  <link rel="payment"
              href="http://paysite.com/custom"/>
</flight>
dependency injection when integrating:

                             coupling--

                              restrips
                                pay

                        resttrips.com


   guilherme




                              paysite.com
dependency injection when integrating:

                             coupling--

                              restrips
                                pay

                        resttrips.com


   guilherme




                              paysite.com
DESAFIO 2
adicione 1 link
mas
eu não viajo sozinho
meu amigo
 sergio
resttrips.com: sharing a trip


flight = Client.at('http://resttrips.com/f/574XR4').get();

confirmation = flight.getLink("payment").
                  patch(cardInformation, value/2);

// send the payment link to another part of the web

flight = Client.at('http://resttrips.com/f/574XR4').get();

confirmation = flight.getLink("payment").
                  patch(cardInformation, value/2);
resttrips.com: sharing a trip


flight = Client.at('http://resttrips.com/f/574XR4').get();

confirmation = flight.getLink("payment").
                  patch(cardInformation, value/2);

// send the payment link to another part of the web

flight = Client.at('http://resttrips.com/f/574XR4').get();

confirmation = flight.getLink("payment").
                  patch(cardInformation, value/2);
resttrips.com: sharing a trip


flight = Client.at('http://resttrips.com/f/574XR4').get();

confirmation = flight.getLink("payment").
                  patch(cardInformation, value/2);

// send the payment link to another part of the web

flight = Client.at('http://resttrips.com/f/574XR4').get();

confirmation = flight.getLink("payment").
                  patch(cardInformation, value/2);
calendar: integrating my systems


myself = Client.at('http://users.calendar.com')
                                .with(auth).get();

myself.link("calendar").patch(flight.link("self"));
calendar: integrating my systems


myself = Client.at('http://users.calendar.com')
                                .with(auth).get();

myself.link("calendar").patch(flight.link("self"));
calendar: more examples



me.link("calendar").patch(link_to_birthday_list)
me.link("calendar").patch(link_to_hotel_reservation)
me.link("calendar").patch(link_to_trip_details)
so what?
Any update on the flight ==> reflects here
Any update on the hotel ==> reflects here
Any update on the meeting ==> reflects here




                         so what?
DESAFIO 3
DESAFIO 3 e 4
Any update on the flight ==> reflects here
Any update on the hotel ==> reflects here
Any update on the meeting ==> reflects here




                         so what?
Any update on the flight ==> reflects here


                                               !
     Any update on the hotel ==> reflects here

                                            te
     Any update on the meeting ==> reflects here


                                     g ra
                            in t   e
                    s e   ,
             st   u
     ’t   ju                       so what?
d o n
Remove ==> Cancels the flight
Remove ==> Cancels the reservation
Remove ==> Emails your coworkers




                   so what?
Remove ==> Cancels the flight


                                    l!
            Remove ==> Cancels the reservation


                                 ro
            Remove ==> Emails your coworkers

                                t
                           co n
                 l iz    e
             tr a
        ce n
  o n’t                        so what?
d
so what? that was just keeping an URI.




                                        ro l!
                                   co nt
                         a li ze
                    en tr
              no tc
           o
          dRemove ==> Cancels the flight
           Remove ==> Cancels the reservation
           Remove ==> Emails your coworkers
DESAFIO 5
nosso sistema
‘rest’ funciona
    assim?
misc
#json, #xml,
#soap #etc?
which #json, #xml
      #etc?
micro formatos
atom
calendars
must ignore
integration over the web
integration over the web
cache
mov 2011        RELATÓRIO

     detalhes



mov 2011



     detalhes



mov 2011



     detalhes
mov 2010        RELATÓRIO

     detalhes



mov 2010



     detalhes



mov 2010



     detalhes
pagine!
pagine!
mov 2011



mov 2011



mov 2010


pagina 1
pagine!
mov 2011



mov 2011   mov 2010


mov 2010   mov 2010

pagina 1   pagina 2
pagine!
       A!
    AC
  C
mov 2011



mov 2011   mov 2010


mov 2010   mov 2010

pagina 1   pagina 2
pagine!
pagine!
mov 2011



mov 2011


pagina 1
pagine!
                mov 2010


mov 2011
                 mov 2010


mov 2011
                 mov 2010

pagina 1   pagina ano anterior
pagine!
       t u !
  u n i
B
                 mov 2010


 mov 2011
                  mov 2010


 mov 2011
                  mov 2010

 pagina 1   pagina ano anterior
quebre!
 mov 2010



 mov 2010



 mov 2010



 mov 2010
quebre!
 mov 2010
            detalhes


 mov 2010



 mov 2010



 mov 2010
quebre!
       LINK!!!
 mov 2010
             detalhes


 mov 2010



 mov 2010



 mov 2010
quebre!
           Q ?
       ? P
    LINK!!!
  mov 2010




     K
             detalhes




 I N
  mov 2010




L mov 2010



  mov 2010
quebre! O
        R N
         E T E
     H ELINK!!!
     mov 2010
                detalhes



  AC
C
     mov 2010



     mov 2010



     mov 2010
quebre! O
        R N
         E T E
     H ELINK!!!
     mov 2010
                detalhes



  AC
C
     mov 2010



     mov 2010



     mov 2010
quebre! O
         R N
who      E T E
     H
    wanELINK!!!
     mov 2010
                  detalhes


   C ts
  Ao
C f        to
     mov 2010


    rev         live
       er?
     mov 2010



     mov 2010
UM LINK POR VERSÃO
cache
não pode cachear?
acredite. você pode!
      cacheie
bottom up
   design by committe
       mime type?
      microformat
  controlled vocabulary
hypermedia
  integration over the web
hypermedia
         R E
     E B
 Q U
  integration over the web
LIN RE
hypermedia
     E
     KEB
 Q U
  integration over the web
LIN RIE
hypermedia
         E E
     E
     K
    CEHB
 Q
 C U
   A
  integration over the web
@guilhermecaelum
http://www.caelum.com.br




obrigado

Mais conteúdo relacionado

Destaque

Sistemas Multimídia - Aula 03 - O que é Multimídia (Evolução da comunicação e...
Sistemas Multimídia - Aula 03 - O que é Multimídia (Evolução da comunicação e...Sistemas Multimídia - Aula 03 - O que é Multimídia (Evolução da comunicação e...
Sistemas Multimídia - Aula 03 - O que é Multimídia (Evolução da comunicação e...Leinylson Fontinele
 
Sistemas Multimídia - Aula 09 - A TERCEIRA DIMENSÃO (Computação gráfica trid...
Sistemas Multimídia - Aula 09 -  A TERCEIRA DIMENSÃO (Computação gráfica trid...Sistemas Multimídia - Aula 09 -  A TERCEIRA DIMENSÃO (Computação gráfica trid...
Sistemas Multimídia - Aula 09 - A TERCEIRA DIMENSÃO (Computação gráfica trid...Leinylson Fontinele
 
Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...
Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...
Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...Leinylson Fontinele
 
Sistemas Multimídia - Aula 05 - As Plataformas (Ambientes e Configurações)
Sistemas Multimídia - Aula 05 - As Plataformas (Ambientes e Configurações)Sistemas Multimídia - Aula 05 - As Plataformas (Ambientes e Configurações)
Sistemas Multimídia - Aula 05 - As Plataformas (Ambientes e Configurações)Leinylson Fontinele
 
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)Leinylson Fontinele
 
Sistemas Multimídia - Aula 04 - O Que é Multimídia (Ambientes Multimídia e Pr...
Sistemas Multimídia - Aula 04 - O Que é Multimídia (Ambientes Multimídia e Pr...Sistemas Multimídia - Aula 04 - O Que é Multimídia (Ambientes Multimídia e Pr...
Sistemas Multimídia - Aula 04 - O Que é Multimídia (Ambientes Multimídia e Pr...Leinylson Fontinele
 
Sistemas Multimídia - Aula 01 - Apresentação
Sistemas Multimídia - Aula 01 - ApresentaçãoSistemas Multimídia - Aula 01 - Apresentação
Sistemas Multimídia - Aula 01 - ApresentaçãoLeinylson Fontinele
 
Sistemas Multimídia - Aula 02 - Introdução
Sistemas Multimídia - Aula 02 - IntroduçãoSistemas Multimídia - Aula 02 - Introdução
Sistemas Multimídia - Aula 02 - IntroduçãoLeinylson Fontinele
 

Destaque (8)

Sistemas Multimídia - Aula 03 - O que é Multimídia (Evolução da comunicação e...
Sistemas Multimídia - Aula 03 - O que é Multimídia (Evolução da comunicação e...Sistemas Multimídia - Aula 03 - O que é Multimídia (Evolução da comunicação e...
Sistemas Multimídia - Aula 03 - O que é Multimídia (Evolução da comunicação e...
 
Sistemas Multimídia - Aula 09 - A TERCEIRA DIMENSÃO (Computação gráfica trid...
Sistemas Multimídia - Aula 09 -  A TERCEIRA DIMENSÃO (Computação gráfica trid...Sistemas Multimídia - Aula 09 -  A TERCEIRA DIMENSÃO (Computação gráfica trid...
Sistemas Multimídia - Aula 09 - A TERCEIRA DIMENSÃO (Computação gráfica trid...
 
Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...
Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...
Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...
 
Sistemas Multimídia - Aula 05 - As Plataformas (Ambientes e Configurações)
Sistemas Multimídia - Aula 05 - As Plataformas (Ambientes e Configurações)Sistemas Multimídia - Aula 05 - As Plataformas (Ambientes e Configurações)
Sistemas Multimídia - Aula 05 - As Plataformas (Ambientes e Configurações)
 
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
 
Sistemas Multimídia - Aula 04 - O Que é Multimídia (Ambientes Multimídia e Pr...
Sistemas Multimídia - Aula 04 - O Que é Multimídia (Ambientes Multimídia e Pr...Sistemas Multimídia - Aula 04 - O Que é Multimídia (Ambientes Multimídia e Pr...
Sistemas Multimídia - Aula 04 - O Que é Multimídia (Ambientes Multimídia e Pr...
 
Sistemas Multimídia - Aula 01 - Apresentação
Sistemas Multimídia - Aula 01 - ApresentaçãoSistemas Multimídia - Aula 01 - Apresentação
Sistemas Multimídia - Aula 01 - Apresentação
 
Sistemas Multimídia - Aula 02 - Introdução
Sistemas Multimídia - Aula 02 - IntroduçãoSistemas Multimídia - Aula 02 - Introdução
Sistemas Multimídia - Aula 02 - Introdução
 

Semelhante a REST: Hypermidia e Cache - DNAD 2011

The dark side of the app - Todi Appy Days 2015
The dark side of the app - Todi Appy Days 2015The dark side of the app - Todi Appy Days 2015
The dark side of the app - Todi Appy Days 2015Todi Appy Days
 
The dark side of the app
The dark side of the appThe dark side of the app
The dark side of the appSimone Di Maulo
 
Lost in transaction - Strategies to deal with (in)consistency in distributed ...
Lost in transaction - Strategies to deal with (in)consistency in distributed ...Lost in transaction - Strategies to deal with (in)consistency in distributed ...
Lost in transaction - Strategies to deal with (in)consistency in distributed ...Bernd Ruecker
 
Layar Events in New York and San Francisco
Layar Events in New York and San FranciscoLayar Events in New York and San Francisco
Layar Events in New York and San FranciscoMarc René Gardeya
 
Introduction to AngularJS
Introduction to AngularJSIntroduction to AngularJS
Introduction to AngularJSPat Cito
 
A reviravolta do desenvolvimento web
A reviravolta do desenvolvimento webA reviravolta do desenvolvimento web
A reviravolta do desenvolvimento webWallace Reis
 
The Future of the Web - Cold Front conference 2016
The Future of the Web - Cold Front conference 2016The Future of the Web - Cold Front conference 2016
The Future of the Web - Cold Front conference 2016Robert Nyman
 
Mojolicious: what works and what doesn't
Mojolicious: what works and what doesn'tMojolicious: what works and what doesn't
Mojolicious: what works and what doesn'tCosimo Streppone
 
Mojolicious. Веб в коробке!
Mojolicious. Веб в коробке!Mojolicious. Веб в коробке!
Mojolicious. Веб в коробке!Anatoly Sharifulin
 
Building Single Page Application (SPA) with Symfony2 and AngularJS
Building Single Page Application (SPA) with Symfony2 and AngularJSBuilding Single Page Application (SPA) with Symfony2 and AngularJS
Building Single Page Application (SPA) with Symfony2 and AngularJSAntonio Peric-Mazar
 
Asynchronous programming patterns in Perl
Asynchronous programming patterns in PerlAsynchronous programming patterns in Perl
Asynchronous programming patterns in Perldeepfountainconsulting
 
Sencha Touch e PhoneGap: SouJava - IBM Maio 2013
Sencha Touch e PhoneGap: SouJava - IBM Maio 2013Sencha Touch e PhoneGap: SouJava - IBM Maio 2013
Sencha Touch e PhoneGap: SouJava - IBM Maio 2013Loiane Groner
 
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)Brian Sam-Bodden
 
The Future of Progressive Web Apps - View Source conference, Berlin 2016
The Future of Progressive Web Apps - View Source conference, Berlin 2016The Future of Progressive Web Apps - View Source conference, Berlin 2016
The Future of Progressive Web Apps - View Source conference, Berlin 2016Robert Nyman
 
Rails Presentation (Anton Dmitriyev)
Rails Presentation (Anton Dmitriyev)Rails Presentation (Anton Dmitriyev)
Rails Presentation (Anton Dmitriyev)True-Vision
 

Semelhante a REST: Hypermidia e Cache - DNAD 2011 (20)

Arquitetura: chega de mesmice
Arquitetura: chega de mesmiceArquitetura: chega de mesmice
Arquitetura: chega de mesmice
 
Arquitetura chega de mesmice
Arquitetura  chega de mesmiceArquitetura  chega de mesmice
Arquitetura chega de mesmice
 
CloudKit
CloudKitCloudKit
CloudKit
 
The dark side of the app - Todi Appy Days 2015
The dark side of the app - Todi Appy Days 2015The dark side of the app - Todi Appy Days 2015
The dark side of the app - Todi Appy Days 2015
 
The dark side of the app
The dark side of the appThe dark side of the app
The dark side of the app
 
Lost in transaction - Strategies to deal with (in)consistency in distributed ...
Lost in transaction - Strategies to deal with (in)consistency in distributed ...Lost in transaction - Strategies to deal with (in)consistency in distributed ...
Lost in transaction - Strategies to deal with (in)consistency in distributed ...
 
Layar Events in New York and San Francisco
Layar Events in New York and San FranciscoLayar Events in New York and San Francisco
Layar Events in New York and San Francisco
 
Introduction to AngularJS
Introduction to AngularJSIntroduction to AngularJS
Introduction to AngularJS
 
Tying Your Shoes
Tying Your ShoesTying Your Shoes
Tying Your Shoes
 
Secure my ng-app
Secure my ng-appSecure my ng-app
Secure my ng-app
 
A reviravolta do desenvolvimento web
A reviravolta do desenvolvimento webA reviravolta do desenvolvimento web
A reviravolta do desenvolvimento web
 
The Future of the Web - Cold Front conference 2016
The Future of the Web - Cold Front conference 2016The Future of the Web - Cold Front conference 2016
The Future of the Web - Cold Front conference 2016
 
Mojolicious: what works and what doesn't
Mojolicious: what works and what doesn'tMojolicious: what works and what doesn't
Mojolicious: what works and what doesn't
 
Mojolicious. Веб в коробке!
Mojolicious. Веб в коробке!Mojolicious. Веб в коробке!
Mojolicious. Веб в коробке!
 
Building Single Page Application (SPA) with Symfony2 and AngularJS
Building Single Page Application (SPA) with Symfony2 and AngularJSBuilding Single Page Application (SPA) with Symfony2 and AngularJS
Building Single Page Application (SPA) with Symfony2 and AngularJS
 
Asynchronous programming patterns in Perl
Asynchronous programming patterns in PerlAsynchronous programming patterns in Perl
Asynchronous programming patterns in Perl
 
Sencha Touch e PhoneGap: SouJava - IBM Maio 2013
Sencha Touch e PhoneGap: SouJava - IBM Maio 2013Sencha Touch e PhoneGap: SouJava - IBM Maio 2013
Sencha Touch e PhoneGap: SouJava - IBM Maio 2013
 
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
 
The Future of Progressive Web Apps - View Source conference, Berlin 2016
The Future of Progressive Web Apps - View Source conference, Berlin 2016The Future of Progressive Web Apps - View Source conference, Berlin 2016
The Future of Progressive Web Apps - View Source conference, Berlin 2016
 
Rails Presentation (Anton Dmitriyev)
Rails Presentation (Anton Dmitriyev)Rails Presentation (Anton Dmitriyev)
Rails Presentation (Anton Dmitriyev)
 

Mais de Guilherme Silveira

Equipes ágeis em 2012 - Lições aprendidas
Equipes ágeis em 2012 - Lições aprendidasEquipes ágeis em 2012 - Lições aprendidas
Equipes ágeis em 2012 - Lições aprendidasGuilherme Silveira
 
Introducao a machine learning na educacao
Introducao a machine learning na educacaoIntroducao a machine learning na educacao
Introducao a machine learning na educacaoGuilherme Silveira
 
Depois de Scrum e XP: não pare de aprender, não pare de inovar
Depois de Scrum e XP: não pare de aprender, não pare de inovarDepois de Scrum e XP: não pare de aprender, não pare de inovar
Depois de Scrum e XP: não pare de aprender, não pare de inovarGuilherme Silveira
 
O grandiosismo dos loucos - Agile Brazil 2011, Cecilia Fernandes e Guilherme ...
O grandiosismo dos loucos - Agile Brazil 2011, Cecilia Fernandes e Guilherme ...O grandiosismo dos loucos - Agile Brazil 2011, Cecilia Fernandes e Guilherme ...
O grandiosismo dos loucos - Agile Brazil 2011, Cecilia Fernandes e Guilherme ...Guilherme Silveira
 
Software de qualidade e qualidade de código
Software de qualidade e qualidade de códigoSoftware de qualidade e qualidade de código
Software de qualidade e qualidade de códigoGuilherme Silveira
 
Deploy continuo, integraçao continua não basta
Deploy continuo, integraçao continua não bastaDeploy continuo, integraçao continua não basta
Deploy continuo, integraçao continua não bastaGuilherme Silveira
 
noSql + rest: Arquitetura Contemporanea
noSql + rest: Arquitetura ContemporaneanoSql + rest: Arquitetura Contemporanea
noSql + rest: Arquitetura ContemporaneaGuilherme Silveira
 
Caelum 2010 - Rest Arquitetura Irreponsavel?
Caelum 2010 - Rest Arquitetura Irreponsavel?Caelum 2010 - Rest Arquitetura Irreponsavel?
Caelum 2010 - Rest Arquitetura Irreponsavel?Guilherme Silveira
 
Caelum 2009 Rest Ao Restful - CEJUG 2009
Caelum 2009   Rest Ao Restful - CEJUG 2009Caelum 2009   Rest Ao Restful - CEJUG 2009
Caelum 2009 Rest Ao Restful - CEJUG 2009Guilherme Silveira
 

Mais de Guilherme Silveira (18)

Equipes ágeis em 2012 - Lições aprendidas
Equipes ágeis em 2012 - Lições aprendidasEquipes ágeis em 2012 - Lições aprendidas
Equipes ágeis em 2012 - Lições aprendidas
 
Introducao a machine learning na educacao
Introducao a machine learning na educacaoIntroducao a machine learning na educacao
Introducao a machine learning na educacao
 
Depois de Scrum e XP: não pare de aprender, não pare de inovar
Depois de Scrum e XP: não pare de aprender, não pare de inovarDepois de Scrum e XP: não pare de aprender, não pare de inovar
Depois de Scrum e XP: não pare de aprender, não pare de inovar
 
O grandiosismo dos loucos - Agile Brazil 2011, Cecilia Fernandes e Guilherme ...
O grandiosismo dos loucos - Agile Brazil 2011, Cecilia Fernandes e Guilherme ...O grandiosismo dos loucos - Agile Brazil 2011, Cecilia Fernandes e Guilherme ...
O grandiosismo dos loucos - Agile Brazil 2011, Cecilia Fernandes e Guilherme ...
 
Software de qualidade e qualidade de código
Software de qualidade e qualidade de códigoSoftware de qualidade e qualidade de código
Software de qualidade e qualidade de código
 
Using the web for real
Using the web for realUsing the web for real
Using the web for real
 
Arquitetura: chega de mesmice
Arquitetura: chega de mesmiceArquitetura: chega de mesmice
Arquitetura: chega de mesmice
 
Rest @ Qcon 2010
Rest @ Qcon 2010Rest @ Qcon 2010
Rest @ Qcon 2010
 
Rest clients
Rest clientsRest clients
Rest clients
 
Rest clients
Rest clientsRest clients
Rest clients
 
Rest clients
Rest clientsRest clients
Rest clients
 
Um produto por semana
Um produto por semanaUm produto por semana
Um produto por semana
 
Deploy continuo, integraçao continua não basta
Deploy continuo, integraçao continua não bastaDeploy continuo, integraçao continua não basta
Deploy continuo, integraçao continua não basta
 
noSql + rest: Arquitetura Contemporanea
noSql + rest: Arquitetura ContemporaneanoSql + rest: Arquitetura Contemporanea
noSql + rest: Arquitetura Contemporanea
 
Rest workflows
Rest workflowsRest workflows
Rest workflows
 
Caelum 2010 - Rest Arquitetura Irreponsavel?
Caelum 2010 - Rest Arquitetura Irreponsavel?Caelum 2010 - Rest Arquitetura Irreponsavel?
Caelum 2010 - Rest Arquitetura Irreponsavel?
 
REST in Practice
REST in PracticeREST in Practice
REST in Practice
 
Caelum 2009 Rest Ao Restful - CEJUG 2009
Caelum 2009   Rest Ao Restful - CEJUG 2009Caelum 2009   Rest Ao Restful - CEJUG 2009
Caelum 2009 Rest Ao Restful - CEJUG 2009
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 

Último (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 

REST: Hypermidia e Cache - DNAD 2011

Notas do Editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n
  79. \n
  80. \n
  81. \n
  82. \n
  83. \n
  84. \n
  85. \n
  86. \n
  87. \n
  88. \n
  89. \n
  90. \n
  91. \n
  92. \n