If you thinks about accebility, you must choose both ways. A lot of AJAX to improve user experiencie, but backed by server-side alternatives in order to allow users without Javascript and with special browsers or navigation methods. You will improve the discapacited user experience too.
On Aug 20, 4:13 pm, drewB <[email protected]> wrote: > I have been thinking lately about what should be executed client-side > vs. server-side and was curious what others thoughts are. > > Let's take the following example. A user has selected X pieces of > furniture. On a single page, they are > shown a list of the furniture items with specific info about each > piece (name, dimensions, manufacturer, list of parts etc). Much of > this info wouldn't be shown by default but is expandable. The user > can delete furniture items or add new ones. When they add a new one it > is immediately added to the page without reloading. > > *Server-side heavy solution* > > You could implement this mostly server-side with some javascript to > expand info, add and delete items, etc. When the user added an item, > you could use AJAX to build the new block server-side and just add it > to the page when returned. > > *Client-side heavy solution* > > Server-side you could generate a simple javascript variable with the > page's data (perhaps in JSON) and then generate all the page's content > with javascript client-side (you would of course still do all the > layout server-side). This is actually much easier than it might > seem. Prototype has some nice DOM editing that is very clean. > > *My Thoughts* > > Lately, I am leaning toward the Client-side heavy solution for the > following reasons (feel free to argue with me): > > - I make up that the server can handle more users because less work is > done there. (can someone verify or refute this?) > - Cleaner delineation for presentation layer because all the main > content is present with javascript. If I want to change the way > things look, I just go to one place. If it is done server-side, I go > one place for initial presentation (server-side) and another for on- > page dynamic presentation (which has to be javascript). > - Possibly better user experience because there is no delay between > adding an item and it showing up on their screen (don't have to wait > for AJAX call to return). However, there would be a delay when the > page first loads while javascript creates the content (I use a "page > loading . . ." message that disappears typically in less than 1 > second). I could for certain sites, that a delay when someone adds a > new item might be preferable to when the page just loads. > > What are your thoughts? --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---

