0
REST Inspired Code          Partitioning with a          JavaScript Middleware                Janne Kuuskeri, Tommi Mikkon...
Motivation               Web pages are now               web applications               Web application are too           ...
Current State                          Browser                               Server                                       ...
Problems               Applications are               fragmented over many               different technologies           ...
How to Make          It Easier?               One language to rule               them all               Fat client        ...
Groke                                           Internet                         Web Application              Web Applicat...
Implementation                         Groke Client   Groke Server                         JavaScript     CommonJS        ...
Implementation                 Groke Server               Expose interface in terms of resources                         M...
DemoMonday, April 11, 2011
REST?               Functions as resources                         RESTful interface is data (resource) driven            ...
Future Work               Make Groke symmetric by utilizing Comet or               WebSockets               Make client si...
Questions?                         http://github.com/wuher/grokeMonday, April 11, 2011
Upcoming SlideShare
Loading in...5
×

Groke

685

Published on

The Groke server experiment

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
685
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Groke"

  1. 1. REST Inspired Code Partitioning with a JavaScript Middleware Janne Kuuskeri, Tommi Mikkonen Tampere University of TechnologyMonday, April 11, 2011
  2. 2. Motivation Web pages are now web applications Web application are too complex to build How to make it easier?Monday, April 11, 2011
  3. 3. Current State Browser Server Controller View Model JavaScript, CSS, HTML, JSP, Kid, Ajax, XML, JSON eRuby Java, Python, RubyMonday, April 11, 2011
  4. 4. Problems Applications are fragmented over many different technologies Responsibilities are difficult to assign Traditional software engineering principles are difficult to applyMonday, April 11, 2011
  5. 5. How to Make It Easier? One language to rule them all Fat client Automatic and more importantly dynamic code partitioningMonday, April 11, 2011
  6. 6. Groke Internet Web Application Web Application Groke Client Groke Server Browser Web ServerMonday, April 11, 2011
  7. 7. Implementation Groke Client Groke Server JavaScript CommonJS Ajax Narwhal JSGI Jack MiddlewareMonday, April 11, 2011
  8. 8. Implementation Groke Server Expose interface in terms of resources Modules : /groke/module/[module] Functions : /groke/module/[module]/[function] Constructors : /groke/ctor/[module]/[function] Objects : /groke/obj/[obj-id]/[property] Anonymous functions : /groke/func/[func-id]Monday, April 11, 2011
  9. 9. DemoMonday, April 11, 2011
  10. 10. REST? Functions as resources RESTful interface is data (resource) driven Parameters are always POSTed to resources The platform cannot have any understanding about the semantics of the resources (possibly functions) it exposesMonday, April 11, 2011
  11. 11. Future Work Make Groke symmetric by utilizing Comet or WebSockets Make client side wrapper cacheable Garbage collectionMonday, April 11, 2011
  12. 12. Questions? http://github.com/wuher/grokeMonday, April 11, 2011
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×