我正在寻找一个轻量级的 Ruby Web 框架,并且遇到了 西纳特拉拉马泽. 。两者看起来都极其轻盈、简洁、简单。但我对两者都了解不够,无法说出主要区别是什么。也许对其中一种或两种都有经验的人可以发表评论?

有帮助吗?

解决方案

Sinatra不强制执行MVC。

其他提示

其他轻量级 Ruby 框架

我喜欢 _为什么要露营 (现在维护 由社区)它必须是其中最轻的(有关最新信息 [>= v1.9],请参阅 露营链接露营维基, ,埃莉诺·麦克休的 '脱离轨道' 或 [v 1.5] Jeremy McAnally 的 去露营幻灯片 或者这些 露营截屏视频, , 这 露营播客 和纳撒尼尔·塔尔博特的 为什么露营很重要, ,但请阅读 露营邮件列表 当前版本信息的变化和演变以及 尝试最新的博客示例)。你现在也可以 阅读最新的 Camping api 文档.

但我花了 3 天的时间对所有我能找到的看起来相当最新或成熟的较轻的 Ruby 框架进行了大规模的搜索(我正在尝试找到一个来教学生框架的基础知识),所以,为了帮助你根据你的想法,以下(与 Ca​​mping)从一堆中脱颖而出(至少有一个开发人员名称,以便你也可以查看它们)...

首先,那些善良的拉马兹人曾经有一个 Ruby 框架列表,但链接消失了, ,这是一篇很好的文章,标题为 10 个替代 Ruby Web 框架. 。还有一个 关于 Camping 和 Merb 的 Ruby 论坛讨论 这也涵盖了替代 ORM。请记住,下面的一些内容是后 Merb 并扩展了该方法。

西纳特拉 (布莱克·米泽拉尼)

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

西纳特拉评论和链接:

拉马泽 (曼韦鲁)

Ramaze 与 Ruby 1.9 运行良好。

拉马兹评论和链接:

乌比 (克里斯·马蒂厄)

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

Wuby 评论和链接:

爱荷华州 (柯克·海恩斯)

在一个 安东尼奥·坎吉亚诺(Antonio Cangiano)关于拉马泽的文章 他写:“如果你所说的‘切换’只是一般性的‘从我当前的框架/编程语言/编程风格切换’,我没有真正的答案。一个例子是 Kirk Haines 提出的鲜为人知的 IOWA 框架。它已经在生产环境中使用多年,非常稳定,速度非常快(甚至比 Ramaze 还要快),但它的文档和营销并不存在。我不相信仅仅为了酷而追随炒作(即使是 Ramaze),我需要有一个用例来切换到新的东西。”

尽管文档很少 哈尔富尔顿 覆盖爱荷华州 红宝石之路, ,虽然下面的链接说事情已经转移到 斯威夫核心, ,这反过来又表明他们即将出现在 胃肠道, ,但截至 06jul2009 仍然是空的。更令人困惑的是,RubyForge 上的 IOWA 日期是 2004 年,所以……?

爱荷华州评论和链接:

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

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

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

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

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

希望它有所帮助。 米格

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