I saw this - it ties in with a lot of thinking I've had lately.

I have a talk half planned on the future of web development - my personal
feeling is that with javascript now on in the vast majority of browsers, and
with Google at least allowing for SEO on ajax hash-bang URLs, the days of
generating html on the server are rapidly running out.

My favourite app architecture at the moment:
- MongoDB for persistence, serving up JSON (well, BSON)
- Sinatra for the Domain / Model layer, mostly sending JSON back to the
browser (ok, it might have a handful of html pages, but they're rare)
- A fat client in Javascript / JQuery on the client - possibly with MVC if
the app is complex enough, possibly using a library (see below) - though
rolling your own is also quite viable.
- Handlebars.js for client-side templating, to actually build the html.
 (and it means if you must build html server-side, you can share your
mustache templates on both layers)

And browser state managed through the dreaded # anchors.  Html5 and
browser.pushstate might make them redundant one day, but for now they just
work.

There are many big wins if you build apps this way - not least, real
separation of concerns, and great testability.

I'd go further into this, but I have to go... might add some more later.
Some libraries that are looking cool in this area:
- Sammy.js
- Backbone.js
- Sproutcore (I believe - haven't looked at it myself, I prefer lower-level
libraries rather than "do everything")

You may say I'm a dreamer... but I'm not the only one.

- Korny

On Sat, Feb 26, 2011 at 2:02 PM, jamesl <ladd.ja...@gmail.com> wrote:

> I thought the readers here would appreciate this article:
>
>
> http://peter.michaux.ca/articles/mvc-architecture-for-javascript-applications
>
> --
> You received this message because you are subscribed to the Google Groups
> "Ruby or Rails Oceania" group.
> To post to this group, send email to rails-oceania@googlegroups.com.
> To unsubscribe from this group, send email to
> rails-oceania+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/rails-oceania?hl=en.
>
>


-- 
Kornelis Sietsma  korny at my surname dot com http://korny.info
"Every jumbled pile of person has a thinking part
that wonders what the part that isn't thinking
isn't thinking of"

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
or Rails Oceania" group.
To post to this group, send email to rails-oceania@googlegroups.com.
To unsubscribe from this group, send email to 
rails-oceania+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/rails-oceania?hl=en.

Reply via email to