views:

484

answers:

4

What would you suggest for a Javascript MVC framework?

  • SproutCore
  • JavascriptMVC
  • Junction
  • Something I haven't heard of...
A: 

GWT lets you build using an MVC architecture and provide many view components. I don't see it mentioned in these other links and may fit your bill.

jQuery isn't really MVC, but works really well. jQuery + jQuery plugins provides you an organizing structure that helps deal with the complexity and separation of concerns, the same way MVC does. Using this pattern, we've been able to delay a bulky MVC structure, and reserve it for just a few key components.

ndp
Ajaxian just ran a post about doing MVC with GWT. Not something I'd do myself, but I'll pass along the link :)http://ajaxian.com/archives/be-your-company-mvp-with-gwt
bmoeskau
A: 

Last time I checked SproutCore, it was unfortunately rather slow when using relatively fast Firefox 3.5. See it for yourself.

kangax
+1  A: 

A lot depends on what you are building and your skill sets. I'm a JavaScriptMVC contributor, so I'm pretty biased, but I will try to give as far of an answer as possible.

SproutCore is what I consider more of a 'top-down' framework. They've built a lot of the chrome / UI widgets for you. So, your time is spent customizing the widgets to meet your needs. If your needs can be readily met by sproutcore's widgets, I'd suggest using sproutcore.

JavaScriptMVC is a very different type of JavaScript framework. It has no UI widgets. Instead it focuses on the lower-level tools needed to organize and build JavaScript applications. It's basically a layer above jQuery, and packages things like:

  • Compression / building
  • Testing
  • Documentation
  • Error reporting
  • Client side views (templates)
  • Special events
  • 'Missing' DOM functionality (like compare)
  • Dependency management

It supports what we call "Middle-Out" development. It's controller is especially powerful at organizing a jQuery-like plugin. It will take care of event binding for you with a pretty awesome syntax while making the plugin extendable.

So, if you are building a lot of custom controls, and know jQuery, take JavaScriptMVC for a spin.

JavaScriptMVC actually came from Junction, but Junction isn't really under active development.

Justin Meyer