用于Ruby-on-rails的Sproutcore或Cappuccino?

nev*_*ame 18 javascript browser frontend ruby-on-rails

Rails是一个非常棒的后端框架,可以保持一切清洁和结构化.

我想你们都想过为前端做同样的事情.

  • SproutCore的
  • 热奶咖啡

你是否使用其中一个MVC javascript框架作为Rails的前端?

如果你这样做,你对它感到满意吗?

你之前是如何编码的?它是如何改变的?

不是Sproutcore更适合Rails,因为它使用了Rails也可以使用的js + css + html.在卡布奇诺,你不使用其中任何一种.

分享你的想法和经验因为我对这个领域都是绿色的,不知道我应该使用哪个Rails.

我只知道我最好在前端有一个MVC框架来获得DRY结构和最佳实践.

Tim*_*Tim 17

在查看工作中的MVC框架时,我们考虑了SproutCore和Cappuccino.他们都从Apple的Cocoa框架和Objective C中汲取了大量的灵感.

我们选择使用SproutCore,因为:

  • 它以与JavaScript中描述的Douglas Crockford的JavaScript视图一致的方式利用JavaScript :好的部分.
  • 良好的MVC框架,可生成快速应用程序.
  • 良好的社区支持该项目.SproutCore的爸爸Charles Jolley直到最近才在Apple工作,现在正在SproutCore全职工作.Apple为SproutCore提供了大量代码,并且正在充分利用它,iWork.com是使用SproutCore构建的.
  • SproutCore专为具有数千个元素的非常繁重的应用程序而设计,使用优化的技术,例如Google Wave或Google Maps等大型列表中的回收列表项.

我们没有选择卡布奇诺,因为:

  • 它创建了一个不同的语言来运行你的应用程序.这是非直观的,让你在Objective J中思考,它确实提供了一个好处,你不会带来讨厌的JavaScript hacky习惯,但忽略了JavaScript的事实是美丽的,可扩展的,强大的.(我绝不会'抨击'Objective J,只是提供一个洞察你在浏览器中运行JavaScript的事实,而不是目标J.如果你在浏览器中运行另一种语言,它会让你感到困惑,因为你正在解释一个使用解释语言解释语言.)
  • 然而,Objective J和Cappuccino提供了漂亮的应用程序并利用了Objective C的语言架构,这是一个在MVC世界中看到的好模型.

(请记住,我在Cappuccino和Objective J方面没有太多经验,所以如果我做出广泛和天真的主张,请告诉我!)

你需要更多地关注你想要的前端框架而不是Rails的"最佳工作".两个框架都很好.我们选择SproutCore是因为它更符合我们对应用程序的需求,符合我们的意识形态.

从涉及SproutCore源代码的经验来看,我可以说它完全独立于您正在使用的服务器实现.我们使用Prosody,一个用Lua编写的BOSH服务器.你想使用Rails.SproutCore开箱即用:

  • Rails的DataSources部署.仅供参考 - 数据存储是SproutCore用于连接Web服务的低端模型层.这很可能是您的SproutCore应用程序和Rails应用程序之间的交汇点.SproutCore并不是真正意味着在Rails中运行,但你当然可以做到!
  • 用于RESTful Rails服务的DataStore.或者任何REST API.如果您需要,它还允许服务器端推送.

至于你的DRY要求 - 这一切都取决于你!您可以利用该框架使您的代码独立且干燥,或具有严格的依赖性并重复.这两种框架都很好,它只取决于你的需求.不要紧张 - 潜入并了解社区以及每个社区正在发生的事情!我们不咬......太多了.