Is JavaScript MVC really JavaScript MVC (I've never used any so I don't know)?
And is MVC the right pattern for rich UI app (GUI or Web client)?
The last time we tried to use MVC in GWT app, it didn't work out quite well. We decided to use MVP + EventBus instead.
These days the MS camp came up with MVVM (a variation of MVP or more closely related to Presentation Model, which I think MVVM is borderline architecture astronaut, but meh, I might be biased).
MVC seems to suit widgets level better as opposed to the architecture pattern for a Rich UI app.
I have used Backbone to build a rich UI app, which would be way beyond my capability and patience level if it was not for the design decision to strictly adhere to MVC. The app is about presenting scientific data in multiple forms, and allowing user to interact with the data and see the outcome of an action instantly. Think Excel with data-driven charts and lots of them. Adhering to MVC allows me to wire models and views up once properly and then forget about the views to focus on the data. It also makes it easy to add after-thought extra views easily without the need to find places to add the wires. Sorry the app is for internal use so I cannot post a link to it. The take-home message for me was that MVC is about separation of concerns to reduce complexity. It becomes an obvious choice when an application is complicated by tangled lines of dependencies across components.
And is MVC the right pattern for rich UI app (GUI or Web client)?
The last time we tried to use MVC in GWT app, it didn't work out quite well. We decided to use MVP + EventBus instead.
These days the MS camp came up with MVVM (a variation of MVP or more closely related to Presentation Model, which I think MVVM is borderline architecture astronaut, but meh, I might be biased).
MVC seems to suit widgets level better as opposed to the architecture pattern for a Rich UI app.