我想将一个带有MVC的javascript框架用于复杂的Web应用程序(它将是一组相关的应用程序和页面之一),用于数字档案中的Intranet。我一直在看SproutCore和JavascriptMVC。我想选择一个框架并坚持下去。
在比较这两者时,有谁知道区别特征是什么?
我想要一些简单,直接的东西,我可以轻松地自定义/破解,这不会让我的方式过多,但同时也为我提供了保持我的代码组织良好和事件的基础驱动的。我还计划大量使用jquery。
我知道sproutcore是由Apple支持的,看起来它在今天变得越来越受欢迎,并且它有一个漂亮的绿色网站:),而JavascriptMVC看起来不那么专业,后面有更少的跟随和更少的动力。
我已经完成了两者的教程,我对SproutCore印象更深刻(在JMVC教程中你没有做任何实质性的事情) - 但在我脑海中的某个地方,我觉得JMVC可能会更好,因为它不会尝试做太多 - 它只是为您提供基于几个jquery插件的MVC功能,并且您可以将jquery用于其他所有内容,因此它具有灵活性。而SproutCore似乎有更多自己的API等......这在某种程度上也很不错......但是你有点陷入其中......嗯,我很困惑:)。
任何想法都会非常感激。
答案 0 :(得分:9)
作为JavaScriptMVC的贡献者,我非常偏颇。但我会尽力给出最好的答案。
JavaScriptMVC也需要数年时间才能开发出来。但它不是专注于ui功能,而是专注于低于此的层。这有几个原因:
JavaScriptMVC将测试,错误报告和文档融入框架中。测试是最令人印象深刻的部分。它集成了selenium和envjs测试。
我的建议是使用SproutCoreif,你的需求可以通过SproutCore非常简单地构建。但是如果你知道jQuery,必须构建很多自定义控件,或者需要真正棒极了的测试,请使用JavaScriptMVC。
答案 1 :(得分:8)
很有趣,因为仅仅一个月左右,我们的团队正好评估了这两个框架。我们最终选择了JavaScriptMVC,并且我已经用它实践了大约一个月。
我喜欢它...但是,我是SproutCore的巨大支持者。在我们评估它们之前,我从来没有听说过任何一个框架,但是一旦我看到SproutCore并且看到引擎盖下,我就非常非常感动。老实说,我认为那里没有任何可以给你带来的力量。是的,你会有一个学习曲线,但是一旦你知道它就可以让一个人完成5或10的工作。
所以我会在心跳中使用SproutCore。
话虽如此,JavascriptMVC(又名“JMVC”)很不错。它并没有真正给你jQuery本身。您仍然可以自己构建一些基础架构(取决于您的要求有多复杂)。这既是赞成也是骗局。关于它的一个好处是,如果你需要深入了解某些JMVC的细节,你可以......它不是那么庞大而且难以穿透。
总之,JMVC没有问题。但是,在我看来,即使在与SproutCore的球场上也没有。
答案 2 :(得分:2)
我认为它们之间的主要区别在于SproutCore包含一个GUI,而JMVC是低级别而没有任何图形,所以如果你需要一个GUI,你不能使用JMVC而不包括其他脚本,如jQuery UI或jQuery插件。
你说“JMVC可能会更好,因为它不会尝试做太多”我不同意这一点,SproutCore 1.0发布需要数年时间,因此开发人员有时间制作出色的产品
我建议你使用SproutCore,也许你需要学习更多的东西,你会花更多的时间来练习和理解一切,但是你将学习如何使用一个非常好的框架,它也可以用于未来的项目。
答案 3 :(得分:1)
Sproutcore-2.0消除了ui约束,并且完全适用于自定义应用程序。
http://blog.sproutcore.com/announcing-sproutcore-2-0/
http://blog.sproutcore.com/dispatches-from-the-edge-dropping-in-a-sproutcore-2-0-application/