Sinatra和Ramaze之间的主要区别是什么?

我正在寻找一个轻量级的Ruby Web框架,并且遇到了Sinatra和Ramaze 。 两者看起来都非常简洁,简洁。 但我不知道要么说出主要的区别是什么。 也许有一方或两方经验的人可以发表评论?

Sinatra不强制执行MVC。

其他轻量级的Ruby框架

我喜欢_why的露营 (现在由社区维护),它必须是最轻的(最近的信息[> = v1.9]看到露营维基上的露营 链接 ,埃莉诺麦克赫格的’ 走出铁路’或[ v 1.5] Jeremy McAnally的Going Camping幻灯片或这些露营 播客 ,这个露营播客和Nathaniel Talbott的Why Why Matters ,但阅读Camping邮件列表,了解当前版本信息的变化和演变,并尝试最新的博客示例 )。 您现在还可以阅读最新的Camping api文档 。

但我通过所有较轻的Ruby框架进行了为期3天的大规模拖网,我发现这些框架看起来相当合理或已经完成(我正在努力找到一个教给学生框架的基础知识),以帮助你制作在你的脑海中,以下(与露营)从堆中脱颖而出(至少有一个开发者名称,所以你也可以检查它们)…

对于初学者来说,那些漂亮的Ramaze人曾经有过一个Ruby框架列表,但链接已经消失了 ,这里有一篇很好的文章,名为10 Alternative Ruby web frameworks 。 还有一个关于Camping和Merb的Ruby论坛讨论 ,也讨论了替代ORM。 请记住,下面的一些是后Merb并扩展该方法。

西纳特拉 ( Blake Mizerany )

不是MVC,没有默认的ORM。 好文档。 ‘整个网络应用程序可以封装在一个Sinatra文件中’

Sinatra评论和链接:

  • 关于GIT的Sinatra
  • Sinatra,Ruby Web框架及其重要性
  • Slideshare上的’Sinatra Ruby Framework’
  • 网络应用程序在10分钟内完成
  • 人们解释他们选择Sinatra的原因

Ramaze ( manveru )

Ramaze与Ruby 1.9运行良好。

Ramaze评论和链接:

  • Ramaze示例 (使用PostgreSQL):
  • 在线Ramaze书
  • Ramaze:一个令人惊奇的Ruby框架 ,由Antonio Cangiano设计

Wuby ( Chris Matthieu )

来自评论:“运行Wuby应用程序不需要第三方应用程序或gem,而Wuby库本身包含运行HTTP守护程序并开始提供请求所需的一切”,“ 示例代码对PHP有一点感觉”。

Wuby的评论和链接:

  • Wuby,Ruby的另一个轻量级Web框架

爱荷华州 ( 柯克海恩斯 )

在Antonio Cangiano的一篇关于Ramaze的文章中,他写道:“如果你的意思是’切换’只是从我现在的框架/编程语言/编程风格中转换’,我没有真正的答案。一个例子就是非常未知的来自Kirk Haines的IOWA框架。它已经在生产中使用多年,已经稳定,非常快(甚至比Ramaze更快),但它的文档和营销都不存在。我不相信跟随炒作(即使它是Ramaze)只是为了凉爽,我需要有一个用例来切换到新的东西。“

虽然Hal Fulton在The Ruby Way中介绍了IOWA,但是文档很少,虽然下面的链接说明事情已经转移到Swiftcore ,但这反过来说他们即将出现在GIT上 ,但截至2009年6月,这仍然是空的。 为了进一步掩盖问题,IOWA在RubyForge上的日期是2004年……

爱荷华州的评论和链接:

  • 旧网站+示例,教程
  • 关于RubyForge的IOWA 0.99.2.17
  • 还看到他的ORM Kansas和Swiftiply

我认为这是Sinatra和Ramaze之间真正的品味问题。 两者都很好,都很轻。

最大的区别是Ramaze更像是MVC。 另一方面,Sinatra就像DSL一样工作,并且是RESTful。

我建议你阅读它们的GET_STARTED,这不会超过几分钟,你会看到有什么区别。

我个人喜欢他们(偏爱Ramaze),但有一件事可以帮助你做出决定,事实上Sinatra更受欢迎(我认为),所以你可以在网上找到更多的文档。

另一方面,您可以使用Ramaze并使其更受欢迎。 Ramaze的IRC频道有很多人(包括我),他们很乐意帮助您并回答您的所有问题。

希望能帮助到你。 米格