I’m currently pretty decent at coding C# web applications in ASP.NET MVC 3, PHP + Cake, and Java Spring. Working with these three, I feel comfortable about creating Layered Data, Domain, Service, and Presentation applications. I can organize them well.
But with the need for highly responsive AJAX. I really feel uncomfortable for using jQuery to hook every single little model postback to the controller.
Are there any MVC (Controller + View + View Model + JavaScript) Design Patterns? I’ve recently started reading about Knockout JS and Backbone.js but don’t really seem to understand the “architecture” big words and the benefits they bring let alone healthy design patterns.
Are there any good tutorials or examples out there that demonstrate an advanced JavaScript Application like Google Docs/Calendar/Mail or things like Compilr?
There are quite a few MVC implementations in javascript.
Frankly, the more ajax development is done, the more obvious it becomes that not only do you need server side templating, models, views, controllers, etc, you also need something like this on the javascript side, especially when a lot of dom manipulation is concerned.
The following is a list of popular frameworks:
http://codebrief.com/2012/01/the-top-10-javascript-mvc-frameworks-reviewed/
However, please note that a lot of these have progressed toward the node.js model (in which both client side and server side(s) use javascript syntax.
When developing with C# or asp.net, etc, you’re better off to plan that portion of the architecture as a service layer. Then you push a lot of the templating responsibility to static files and javascript, which is definitely where you wanna be when you’re scaling up.
Then again, you’re also going to run into a lot of ideological questions along the way that you will simply have to decide for yourself.