Grails 与 Rails。哪个有更好的支持?哪一个是开发中型应用程序的更好选择?最重要的是哪一个有更多的插件?

有帮助吗?

解决方案

还有一件事值得一提:就模型而言,两个框架的设计理念有些不同。Grails 更“面向领域”,而 Rails 更“面向数据库”。
在 Rails 中,您基本上是从定义表(使用字段名称及其细节)开始的。然后 ActiveRecord 会将它们映射到 Ruby 类或模型。
在 Grails 中,情况正好相反:你首先定义你的模型(Groovy 类),当你点击运行时,GORM(Grails ActiveRecord 等效项)将创建相关的数据库和表(或更新它们)。这也可能是为什么 Grails 中没有“迁移”的概念(尽管我认为它会在未来的版本中出现)。
我不知道一个是否比另一个更好。我想这取决于你的背景。

话虽这么说,我仍然在想选择哪一个。正如 Tom 所说,如果您依赖 Java,您仍然可以选择 JRuby - 因此 Java 重用不应该是您的唯一标准。

其他提示

我想如果您是一名 Java 开发人员并且想要访问所有现有的企业 Java 库和功能......与 Grails 一起使用。

Rails 更成熟,有更多插件,有更大的用户群,有更好的文档和支持。如果需要,它还可以在 JRuby 上运行,提供对 Java 库的访问。

Grails 有一些有趣的特性,但还不能与 Rails 媲美。但是,如果您主要是 Java 或 Groovy 开发人员,您可能会更喜欢它。但除此之外,我建议现在就将 Rails 用于中型项目。

我说 grails 是因为有很多 java 库。但由于我来自java背景,所以我有点偏见。

如果应用程序规模不大,那么任何一个都足够了——而且选择应该取决于现有的基础设施。假设您已经有一个正在运行的 java servlet 容器服务器,那么您最好坚持使用 grails,而不是为 Rails 配置另一台服务器。

这取决于您使用 Ruby 和/或 Groovy 的技能、您是否需要处理旧版 Java 系统以及您想要在何处部署应用程序。

最初我对 Rails 感到非常兴奋。当时,由于工作全部是 Java,因此无法选择在工作中的应用程序服务器上进行部署。这已经改变了。我不能放弃已经存在的 Java 基础设施和应用程序并转而使用 Ruby,尽管我认为 Rails 很棒。Grails 之所以有效,是因为我们可以将 Groovy 与现有的 Java 解决方案混合搭配。

在工作之余,Ruby 更容易找到低端价格的托管服务。由于 Grails 使用大量现有的 Java 项目,因此即使对于小型应用程序,.war 文件也往往很大。如果您有专用服务器,这不是问题,但尝试在具有 128 MB RAM 的共享主机上运行是行不通的。

2008 年是 Groovy 和 Grails 书籍的一年,但仍然有更多的 Rails 资源可用。

根据您的具体标准,Rails 可能是一个更好的学习框架。如果您有任何 Java 知识或包袱;-),您应该看看 Grails。

我以前用过rails并且非常喜欢它。然而,我现在的公司有很多遗留的 java 代码,因此自然的选择是 grails。

当我开始使用 Rails 时,很少有网站使用它,而且文档也很糟糕。有很棒的railscast 和railsforum.com,但任何不寻常的事情,你都得靠自己。部署它是一场噩梦,而且使用混合集群并没有真正做好生产准备。正如每个人都看到的那样,现在情况非常不同,更加成熟并且部署在各地。

一年多前,由于我上面提到的原因,我不得不学习 grails。过渡到 grails 非常容易,因为它与 Rails 非常相似。同样,它与 Rails 的早期阶段非常相似,但有一个巨大的区别。因为您可以轻松导入 java 代码,所以 grails 用户可以使用几乎所有可用的经过生产测试的 java 库。我已经能够成功地将我们遗留的 java 项目集成到 grails 项目中,并且只需要很少的调整。您还会注意到,插件开发速度很快,主要是因为开发人员只是编写 grails“钩子”,但底层代码是旧的 java 库。部署grails也只是部署一个WAR文件。

您必须关注的另一件事是 IDE。如果您对 eclipse 感到满意,那么 eclipse-STS for grails 将为您提供所有附加功能。我仍然看到很多 Rails 开发人员使用 Textmate,尽管 ruby​​mine 已经取得了长足的进步(Rubymine 的早期版本曾经让我的 ubuntu 陷入瘫痪)。

最重要的是,两者都是很棒的 MVC 框架。RoR 更加成熟并且拥有更多的开发人员。Grails 与 RoR 3-4 年前的水平相同,但我看到进步要快得多。希望这可以帮助。

鉴于昨天制作 Grails 的人刚刚被 Spring 源收购,我会说 Grails。

此外,由于 Groovy 是 Java 的超集,因此您可以直接使用您所了解的 Java,而无需学习 Ruby。现在,您还将学习很多动态内容,并最终编写 Groovy 代码而不是 Java 代码,但它降低了进入门槛。

圣杯一路走来!

我会选择 Grails,因为我喜欢它的方法(指定您的域类并让 Grails 生成其他所有内容),而不是 Rails 方法(构建数据库表并让 Rails 生成其他所有内容)。如果您是 Java 开发人员,您还会喜欢 Java 代码是有效的 Groovy 代码,而 Groovy 类是 Java 类,因此两者的集成都是无缝的。

我可以建议吗 默布?它是基于机架的、模块化的、与 ORM 无关的,由 Ezra Zygmuntowicz 从头开始​​构建,旨在提高速度。现在已经开始有些热度了……

作为一名来自 Java 的 Grails 开发人员,我从一开始就喜欢它。

现在,我开始深入研究 Rails 并遇到了 gem 的问题。虽然 MySQL 与 Grails 的连接设置非常简单,但我仍然在努力让它与 Rails 一起工作。

命令 gem install mysql 不工作,显然是因为我没有安装 XCode。

如果不是因为内存消耗问题,我会说 Grails 是完美的。

Rails 更主流,但灵活性较差。Grails 仍然在快速变化,没有相同的开发人员生态系统,并且文档也不太成熟,但它在某些情况下可以工作,而 Rails 则不能。

我使用过一点涡轮齿轮和导轨。在使用 Rails 之前,我尝试使用 grails,因为我使用 groovy 编写脚本。Grails 是一次艰难的经历。

对于小程序来说,groovy 调用堆栈很难读取,但是当您添加几个重量级框架时,一个简单的错误可能会产生数百行。与 Rails 不同,我使用的 grails 版本没有工具来帮助我确定什么是我的以及什么属于框架。

我最终转而使用 Google Web 工具包,因为我确实不需要数据库。

我认为 Grails 和 Groovy 很有希望,但目前使用它们的用户体验很麻烦(现在是去年春天)。

我认为这在某种程度上取决于你所处的工作环境。

Grails 似乎得到了更多企业层面的认可。

Rails 具有 Koolaid 氛围,对于没有遗留系统的初创企业来说非常容易接受。

就我个人而言,两者都在使用。尽管在 Grails 世界中才刚刚起步——我喜欢 Grails 中的身份验证/授权变得更容易——一个简单的插件;四郎。我喜欢 Rails 不依赖于 JVM,并且不需要一分钟左右的时间来启动。

我发现在 Rails 中设置 BDD/Cucumber 要容易得多,但这可能只是因为我对此感到满意!Grails 世界(cuke4duke 等)肯定在努力让这一切变得更容易,并且有一个活跃的社区开发 Grails。

只是我的2p·

两者都尝试一下:)

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