我学习Rails和具有约西纳特拉和Merb的很少的想法。我想知道,在那里你会使用的Merb / Sinatra的。

的情况下,

感谢您的反馈!

有帮助吗?

解决方案

屈是比Rails小得多,重量更轻的框架。如果你想要得到的东西了快速运行,只是分派关闭了几个网址,然后返回一些简单的内容时使用。看看在西纳特拉主页;这是所有你需要得到一个“你好,世界”的正常运行,而在Rails的,你需要生成一个整体的项目结构,建立一个控制器和视图,设置路由,等等(我没有写在一阵Rails应用程序,所以我不知道到底有多少步“你好,世界”是的,但它比西纳特拉肯定更多)。西纳特拉也有比Rails的依赖要少得多,所以它更容易安装和运行。

我们正在使用西纳特拉作为我们现在正在写一些web客户端库进行快速测试Web服务器。我们可以写一个单一的文件,包括所有的在一个文件中的逻辑,而只有很少的依赖关系的事实,意味着它是一个很多更容易使用,比如果你有一个Rails应用程序运行我们的测试。

被合并到Rails ,所以相当很快就有真的不应该以任何理由使用一个比其他。它最初的设计是有点重量更轻,比Rails更解耦;轨道有更多的内置,你会使用ActiveRecord假设。但是,当他们被合并两个,他们是去耦以类似的方式Rails的,所以如果你已经开始学习Rails的,那么它可能是值得的,只要坚持与和后续的发展,因为他们来了。

其他提示

我不能说为多Merb的,但屈为小或重量轻的解决方案非常有效的。如果你不是用一大堆的代码工作,或者不需要一个巨大的网站,你可以(在我自己的意见)的运行速度是Rails代码一个非常有效的网站与西纳特拉无论是作为快,或两次。

屈也非常适合的应用的局部块,例如前端的统计程序包。或者像 ErrCount ,这只是一个非常简单的计数器。

所以想想轻,速度快,高度简化的Web应用程序(虽然复杂性是你的选择)使用西纳特拉时。

在事物的走向,这将很快成为一个悬而未决的问题。

如已经提到的,Merb的2.0和Rails 3.0将是同样的事情。新近合并的Merb和Rails核心团队已经在对实现这一工作。我不知道,如果他们仍然在五月释放(可能是测试版)的RailsConf会议计划,但它今年肯定发生了。

如果你使用比其他的ActiveRecord的ORM死心塌地,例如,你可能会与Merb的现在,当2.0(Rails的3.0)的船舶开始和更新。现在,Merb的被普遍接受用于改变一个的组分比Rails提供一个更好的框架。

屈看起来像具有低界面的复杂性和稍低的模型级代码比将是正常的Merb / Rails的一个Web应用程序辉煌溶液。实现简单的RESTful API中会是一个伟大的使用。我对其价值不大相信当HTML的任何数量的参与,更不能当模板不甘寂寞。

再次使用Rails(因此Merb的推出)现在坐在机架顶部,我们没有理由不包括婴儿西纳特拉Apps与解决方案:他们可以住在一起。有一个博客交的,讨论的是非常概念

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top