Skip to content

Latest commit

 

History

History
88 lines (64 loc) · 3.3 KB

faq.md

File metadata and controls

88 lines (64 loc) · 3.3 KB
layout title
default
ROCA: Resource-oriented Client Architecture - FAQ

Frequently Asked Questions

Why ROCA?

In our work, we found that it's far easier to get ideas across if they can be referred to by name, compared against other approaches, and thus be made tangible. ROCA is an attempt to provide a reference for exactly this purpose.

Why "ROCA"?

It was the most reasonable and easy-to-remember name we could come up with that also resolved to a meaningful acronym.

How can I install the framework?

You don't – that's the point. ROCA is intended to be framework-agnostic. You can pick any programming language, library, or framework, as long as you adhere to the aspects described above.

If you really need a framework, we recommend you try here.

What are good frameworks that are a good choice for the ROCA style?

We plan to include a section on this, but would like to test the community's reaction first. Frankly, we don't want to risk ROCA being associated with any particular framework or even community.

But what about single-page apps? Aren't they the future?

We don't think so; in our view, single page apps repeat the mistakes of unnecessarily fat server-side Web frameworks on the client side. The fact that the Web relies on a series of resource representations that are linked to each other is not a bug, it's a feature.

So you're against dynamic pages, Ajax and stuff?

Of course not. Using JavaScript to create a better user experience is an entirely awesome idea. That doesn't mean you have to degrade the browser into a runtime for a custom UI engine. It's perfectly possible to use JavaScript unobtrusively, which will in our view give you the best of both worlds.

But not everything is a resource! How about dashboards, portal pages, etc.?

Yes, everything is a resource, at least if we're talking about the Web. Because that's the whole point of it. If it's a dashboard we're talking about, then the resource is the dashboard; if it's a portal you're looking for, you might consider that your browser already does many things one usually expects a portal to do.

Is is either 100% ROCA compliance or nothing?

Of course not. The whole point of this site, though, is to give a reference that one can compare design decisions to.

Who's behind ROCA?

The ROCA style itself is nothing new and can be seen in the wild in any number of Web applications. The name and this document have been created by Till Schulte-Coerne, Stefan Tilkov, Robert Glaser, Phillip Ghadir and Josh Graham, with lots of valuable input from a number of other folks, most notably from internal discussions at innoQ as well as a presentation on ROCA at SpeakerConf 2012.

How can I use this document?

This document is licensed under a Creative Commons license, i.e. you can essentially use it as you see fit, as long as you include proper attribution and share your modifications under the same license. We explicitly encourage you to recommend, compare or develop frameworks according to this style, and intend to be as open as reasonably possible while maintaining conceptual integrity.

Can I provide feedback?

Of course, please use the comments to share your thoughts. We welcome criticism as well as suggestions for improvement.