【问题标题】:In Ruby/Rails, what is "Rails"?在 Ruby/Rails 中,什么是“Rails”?
【发布时间】:2016-08-24 03:37:00
【问题描述】:

所以我要离开一份完全是 Java 堆栈的工作,转而从事一个不对外承认的工作,但他们绝对是 Ruby/Rails 的疯狂。

我对 Ruby 理解得很好,但“Rails”似乎只不过是一个放置 Ruby 语言的 MVC 框架。

我敢肯定,现在有很多人想知道我怎么会这么幼稚,但说真的……请帮助我了解 Ruby 是什么不带 Rails。

愿意阅读任何推荐的读物或书籍!对不起,我是游戏新手!谢谢!

【问题讨论】:

  • 这可能是程序员更好地问的一个问题,但是您的句子“但“Rails”似乎并没有比Ruby语言所依赖的MVC框架多得多”基本上是正确的,除了倒退。 Rails 是一个建立在 Ruby 之上的 MVC 框架。就像 Spring MVC 之于 Java。
  • @photoionized 这实际上是一个非常有用的观点。绝对是我应该采取的方法...谢谢!
  • @photoionized 在引用其他网站时,指出cross-posting is frowned upon 通常会有所帮助

标签: ruby-on-rails ruby ruby-on-rails-3 model-view-controller architecture


【解决方案1】:

Ruby 是一种语言,与 Perl 或 Python 的关系比与 Java 等基于 C 的语言更密切相关。 Ruby 作为一门语言非常平易近人,甚至还有一个交互式控制台可用于快速试验。 Ruby 本身是解释型的,因此您可以使用许多动态功能。这真是一门很好的语言,你可以很快学会。

正如您所说,Rails 是一个 MVC 框架,它包括一个 ORM (ActiveRecord)、一个视图模板引擎 (ERB) 以及对标准 Ruby 库的各种扩展。大多数 Rails 应用程序都是网站,但您可以将 Rails 用于其他目的,例如基于 API 的无头服务器或移动应用程序服务器 - 这些通常组合在一起构成全栈应用程序。

我通常会向希望进行转换的程序员推荐 2 本书:

  • Dave Thomas、Chad Fowler 和 Andy Hunt 编写的 Ruby 编程
  • 由 Sam Ruby、Dave Thomas 和 David Heinemeier Hansson 撰写的敏捷 Web 开发

“Ruby 编程”在本书的前半部分介绍了语言结构和标准工具的使用,并提供了不错的示例,后半部分是标准库参考。它写得很好,被数百万人称为“镐书”。确保获得 Ruby 1.9 和 2.0 书籍,因为它涵盖了最新的 Ruby 版本和功能。

“敏捷 Web 开发”通过开发项目和解释沿途做出的问题和决策来介绍 Rails。我发现这对于希望从另一种语言/框架进行转换的程序员来说,作为一本入门书籍非常有帮助。

【讨论】:

    【解决方案2】:

    这是books list

    Ryan Bates 也保持了出色的 screencats collection

    官方RoR guide

    希望对你有帮助。

    【讨论】:

    • 这些和我希望得到的完全一样...感谢您的努力。我真的很感激。谷歌很难做到这一点!
    【解决方案3】:

    我认为重要的是要注意 Rails 就像其他语言的任何其他 Web 框架。

    Rails 的独特之处在于它是一种“领域特定语言”,它使用其宿主语言 Ruby 的元编程特性来大幅修改该语言。标准 Ruby 类中添加了许多方法,例如 Hash 和数字类。

    此外,Ruby 语言有多种实现,其中两个最好的是“MRI”Ruby (1) 和 JRuby (2)。

    (1) MRI = Matz Ruby 实现; Matz 是 Ruby 语言的主要作者 Yukihiro Matsumoto 的昵称。此实现使用 C 语言进行低级操作,有时称为“C Ruby”。

    (2) JRuby - Ruby 用 Ja​​va 实现并在 Java 虚拟机上运行,​​能够与 Java 和其他 JVM 语言中的代码交互,并且能够将所有可用的 CPU 用于线程,不像 MRI Ruby 限制为 1。

    【讨论】:

      【解决方案4】:

      除了上面列出的资源,这里还有另一本免费的教程/书籍,它是学习 Ruby on Rails 的主要内容:https://www.railstutorial.org/book

      它从许多初学者概念开始到更高级的概念。非常容易理解。

      它还教授使用许多 Rails 开发人员提倡的测试驱动开发;尝试这本书的另一个好处。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-12-28
        • 1970-01-01
        • 1970-01-01
        • 2014-11-19
        • 1970-01-01
        • 1970-01-01
        • 2010-09-15
        • 1970-01-01
        相关资源
        最近更新 更多