Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Adaptive and evolvable apps

Adaptive and evolvable apps

Ben Longden

May 08, 2015
Tweet

More Decks by Ben Longden

Other Decks in Technology

Transcript

  1. Hypermedia*Applica.on*Language { "_links": { "self": { "href": "/orders/1" }, "next":

    { "href": "/orders/2" } }, "_embedded": { "items": [ { "_links": { "self": { "href": "/items/1" } } "price": "10" } ] }, "total": "10" } Adap%ve(and(evolvable(applica%ons(0(Ben(Longden 17
  2. Outbound(naviga-onal { "_links": { "self": { "href": "http://example.org/thing/2" }, "prev":

    { "href": "http://example.org/thing/1" }, "next": { "href": "http://example.org/thing/3" } } } Adap%ve(and(evolvable(applica%ons(0(Ben(Longden 19
  3. Embedded { "_embedded": { "things": [ { ... } ]

    } } Adap%ve(and(evolvable(applica%ons(0(Ben(Longden 20
  4. { "_links": { "self": { "href": "http://example.org/thing/2" }, "prev": {

    "href": "http://example.org/thing/1" }, "next": { "href": "http://example.org/thing/3" } } } Adap%ve(and(evolvable(applica%ons(0(Ben(Longden 24
  5. Use$a$link$template$on$the$home$if$you$need$to$convert$an$id$to$a$URL { "_links": { "self": { "href": "/" }, "thing":

    { "href": "http://example.org/thing/{id}", "templated": "true" } } } Adap%ve(and(evolvable(applica%ons(0(Ben(Longden 30
  6. { "title": "Example Schema", "type": "object", "properties": { "firstName": {

    "type": "string" }, "lastName": { "type": "string" }, "age": { "description": "Age in years", "type": "integer", "minimum": 0 } }, "required": ["firstName", "lastName"] } Adap%ve(and(evolvable(applica%ons(0(Ben(Longden 34