用于Web应用程序开发的sproutcore vs javascriptMVC

swa*_*ami 9 javascript web-applications sproutcore javascriptmvc

我想将一个带有MVC的javascript框架用于复杂的Web应用程序(它将是一组相关的应用程序和页面之一),用于数字档案中的Intranet.我一直在看SproutCore和JavascriptMVC.我想选择一个框架并坚持下去.

比较这两者时,有谁知道区别特征是什么?

我想要一些简单,直接的东西,我可以轻松地自定义/破解,并且这不会让我的方式过多,但同时也为我提供了保持我的代码组织良好和事件驱动的基础.我还计划大量使用jquery.

我知道sproutcore是由Apple支持的,看起来它变得越来越受欢迎,并且它有一个漂亮的绿色网站:),而JavascriptMVC看起来不那么专业,没有跟随和更少的动力背后.

我已经完成了两者的教程,我对SproutCore印象更深(在JMVC教程中你没有做任何实质性的事情) - 但在我脑海中的某个地方,我觉得JMVC可能会更好,因为它没有'尝试做太多 - 它只是给你基于几个jquery插件的MVC功能,你可以使用jquery用于其他一切,所以它的灵活性.虽然SproutCore似乎有更多自己的API等......这在某种程度上也很不错......但是你有点陷入其中....嗯我很困惑:).

任何想法将不胜感激.

Jus*_*yer 9

作为JavaScriptMVC的贡献者,我非常偏颇.但我会尽力给出最好的答案.

JavaScriptMVC也需要数年时间才能开发出来.但它不是专注于ui功能,而是专注于低于此的层.这有几个原因:

  1. 你可以找到一个jQuery小部件来满足几乎所有需求.没有理由竞争这些插件.相反,JavaScriptMVC尝试使用它们.
  2. 大多数人需要一个或两个自定义小部件/控件.JavaScriptMVC希望尽可能简单地构建和维护这些部分.
  3. 灵活性+ API.我不确定该怎么说这个......但这是我最好的镜头......使用JavaScriptMVC,我们希望应用程序的每一层都尽可能易于理解和维护.这就是为什么我们选择jQuery作为我们的低级库.它的API是关于dom的最佳抽象.人们通常直接从低级API来构建Widget/Control.这就是为什么大多数jQuery小部件的代码看起来非常不同.我们想要一个中间层来组织我们的代码并推广最佳实践,同时提供足够的灵活性来满足几乎任何要求.因此,使用JavaScriptMVC,您可以获得非常可靠的低级和中级层.但是,你没有得到小部件.

JavaScriptMVC将测试,错误报告和文档融入框架中.测试是最令人印象深刻的部分.它集成了selenium和envjs测试.

我的建议是使用SproutCoreif,你的需求可以通过SproutCore非常简单地构建.但是如果您了解jQuery,必须构建大量自定义控件,或者需要真正棒极了的测试,请使用JavaScriptMVC.


Cha*_*ers 8

有趣,因为仅仅一个月左右,我们的团队正好评估了这两个框架.我们最终选择了JavaScriptMVC,并且我已经用它实践了大约一个月.

我喜欢它...但是,我是SproutCore的巨大支持者.在我们评估它们之前,我从来没有听说过任何一个框架,但是一旦我看到SproutCore并在引擎盖下看,我就非常非常感动.老实说,我认为那里没有任何可以给你带来的力量.是的,你会有一个学习曲线,但是一旦你知道它就可以让一个人完成5或10的工作.

所以我会在心跳中使用SproutCore.

话虽如此,JavascriptMVC(又名"JMVC")很不错.它并没有真正给你jQuery本身.您仍然可以自己构建一些基础架构(取决于您的要求有多复杂).这既是赞成也是骗局.关于它的一个好处是,如果你需要深入了解某些JMVC的细节,你可以......它不是那么庞大而且难以穿透.

总之,JMVC没有问题.但是,在我看来,即使在SproutCore的球场上也没有.