【问题标题】:Understanding Rails core source code?了解 Rails 核心源代码?
【发布时间】:2011-01-27 22:18:57
【问题描述】:

我想开始为 Rails 制作代码补丁。是否有任何关于“高级”Ruby 的好书我应该阅读以了解 Rails 源代码?还有其他入门技巧吗? Rails 看起来像一头大野兽,我不知道从哪里开始!

谢谢, 杰森。

更新:我也在寻找更多解释它的“网络”方面的东西——即 HTTP、Web 服务器、Rack 等。

【问题讨论】:

    标签: ruby-on-rails


    【解决方案1】:

    我写了the beginnings of an initialization guide for Rails 3,它可以帮助您理解Rails 3 中的一些常见概念。这主要涵盖了“railties”部分,但在实际的Railties 中有所扩展。这实际上取决于您想在 Rails 中修补/查看哪些内容,这实际上适用于您。

    【讨论】:

      【解决方案2】:

      我的建议是阅读以下内容: http://pragprog.com/titles/rails3/agile-web-development-with-rails-third-edition 大致了解 Rails 在外部的工作原理(如果您还没有的话)。

      然后检查最新的主干并开始阅读您喜欢的组件,随意处理文件并在实时项目中尝试更改。

      元编程是 Rails 中经常使用的一个概念,所以这本书肯定也不错:http://pragprog.com/titles/ppmetr/metaprogramming-ruby

      希望这会让你上路

      【讨论】:

        【解决方案3】:

        也许 Manning 的 David Black 的 ruby​​-for-rails 书也可以帮助您

        【讨论】:

          【解决方案4】:

          你需要 obie fernandez 的“铁路之路” - http://my.safaribooksonline.com/9780321445612

          它比任何其他 Rails 书籍都要好得多 - 只是纯粹的信息 - 怀疑它是否已准备好 rails3,但可能有更新版本的计划 - 说真的,买它

          【讨论】:

            【解决方案5】:

            Medium eXposure 的 Rails 3 Reading Material 有大量...呃,阅读材料,而 Jason Seifer 的 32 Rack Resources to Get You Started 应该让您在 Rack 上呆多久就玩多久。

            您可能对Rails on Rack 感兴趣。它假定您对 Rack 有一定的了解,但提供了获取这些知识的良好链接。

            Engine Yard series on the Rails and Merb merge 包含很多关于 Rails 3 内部工作原理和即将发生的变化的有用信息。

            【讨论】:

              【解决方案6】:

              正如您所指出的,您可能应该从基础开始。我建议在学习 rails 和 ruby​​ 的同时阅读 Andrew S. Tanenbaum 的“计算机网络”。您几乎可以在任何科学图书馆中找到它。

              【讨论】:

                【解决方案7】:

                杰森博格。

                2019 年我花了 3 周时间深入研究 Rails5 的源代码。

                完成那项工作后,我对解释 Rails 有了信心。

                希望我的工作也能帮助到你。

                这是我的帖子: https://github.com/gazeldx/Learn-Rails-by-Reading-Source-Code

                Table of Contents
                Part 0: Before reading Rails 5 source code
                  What will you learn from this tutorial?
                Part 1: Your app: an instance of YourProject::Application
                Part 2: config
                Part 3: Every request and response
                  Puma
                  Rack apps
                  The core app: ActionDispatch::Routing::RouteSet instance
                  Render view
                  How can instance variables defined in Controller be accessed in view file?
                Part 4: What does $ rails server do?
                  Thor
                  Rails::Server#start
                  Starting Puma
                  Conclusion
                  Exiting Puma
                  Process and Thread
                  Send SIGTERM to Puma
                

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2014-01-29
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  相关资源
                  最近更新 更多