什么是SproutCore,为什么我应该关注它?

12

我刚刚看到一条新闻,一位人员离开了苹果公司去开发SproutCore。它似乎是另一个jscript代码的集合。

那么这有什么大不了的,为什么有很多人在大肆宣扬呢?

它提供了什么jquery / extJs /等所没有提供的东西?

如何决定是否值得投资时间来找出它对他们是否有用?

肯定有一些不同之处让人兴奋,但是我从它的网站上看不出来,那么我错过了什么?

(还是因为我不是ruby程序员所以无法理解它的网站?)


我刚刚发现了http://wiki.sproutcore.com/About-SproutCore-Project,其中提供了更好的描述。看起来SproutCore不支持IE6,这在一定程度上限制了它只能用于家庭用户和小公司的网站。未来大型企业和政府将会放弃IE6,但我仍然看到太多招标文件中要求支持IE6的规范。
2个回答

10
SC是一个完整的MVC框架,用于编写RIA应用程序。而ExtJS则是一组集成组件。MVC意味着您有独立的模型、视图和控制器层。
我曾与SC一起工作了6个月,并对其效果感到惊讶。在SC中,当您加载某些模型对象时,视图通过控制器自动更新这些对象的绑定。您不需要编写任何代码,如在extjs中那样,用户执行某些操作并且事件处理程序会告诉所有视图进行更新。(或者至少您会少写许多那种类型的代码)。
SC的小部件集不像EXTs那样强大,但您可以为几乎任何内容编写自己的视图。另一件事是,SC集成了一个单元测试框架。那太棒了。您可以在隔离状态下测试模型代码、控制器代码和视图代码。
编辑 - - ExtJS / Sencha 在最新版本中变得更加MVC导向,因此“EXT是一个组件框架”的说法不再适用。
我仍然认为SC是一个很棒的框架,可以给任何有兴趣的人提供很多里程碑式的帮助。

2
这些关于ExtJS 4的陈述有些可能不再准确。 - sym3tri
2
@sym3tri,没错,但它们在编写时肯定是准确的。 - hvgotcodes
是的,没有争议。只是确保现在遇到这个问题的人知道。 - sym3tri

3

看起来你对新事物感到疲倦 :)

但是SproutCore是一个非常强大的框架,试图超越Web应用程序中DOM的限制,它的范围与jQuery/extJs等不同,你可以将其与例如Cappuccino框架进行比较,但不能与大多数已知的js库进行比较。两者都有自己的控件、Web元素等,以在Web浏览器上创建更像桌面应用程序的应用。

您可以查看Mozilla的Bespin项目,了解使用SproutCore可以实现什么。还可以看一下他们在Cappuccino上所做的工作,以了解他们为什么离开了苹果公司。


7
我厌倦了101种不成熟的网络应用程序创建解决方案,而且没有两个开发人员编写的网络代码是彼此乐意合作的! - Ian Ringrose
3
你认识多少个乐意在别人的代码上工作的开发者?这是本质问题。我们喜欢创造。就像艺术家互相批评一样。那就是现实。 - George Marian
@George,是的,但似乎网络存在一个更大的问题,因为没有两个大型网络应用程序是相似的。(Winforms应用程序似乎更相似) - Ian Ringrose
@Ian Ringrose 这是可以预料的,因为有许多可用于Web应用程序的技术,其中许多技术相当宽松,允许使用更多的方法来完成同样的事情。虽然许多Winforms应用程序是相似的,但这并不一定适用于所有应用程序。更好的是,Winforms并不是创建应用程序的唯一方式。您基本上正在将应用程序编程技术的子集与整个Web应用程序编程宇宙进行比较。 - George Marian
@George,考虑一下两个工作规范,一个是WinForms,另一个是Asp.net,对于曾经在以前的工作中使用相同工作规范的人来说,学习新工作有多难。 - Ian Ringrose
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接