让知识连接你我
投稿赚钱
当前位置: 首页 > 后端开发 > Rails 初学者指南
  • 101
  • 微信分享

    扫一扫,在手机上查看

Rails 初学者指南

2019.09.07 10:00 219 浏览 举报

  今年 2 月中下旬,我 和 Daniel,Terry,Kevin 在 Teahour.FM 上聊了一期 Ruby 与 Rails 的个人经历和对新手入门的认识建议 How to Learn Ruby and Rails。而这竟然变为了当前 Teahour 这样多期里头最受欢迎的一期。Rails 4 公布在即,看上去 Rails 已经愈来愈不适合新手入门认识。因此对于新手入门而言,认识正确的学习策略无痛上路变得就格外至关重要。

  我在 06 年尾现在开始触及 Rails 的时候,Rails 版本或是 1.2,Ruby 版本 1.8.6。那时我主要是一个后端开发程序员,不太懂 Web 开发设计,并不会 HTML,CSS,JS。并且那时的 Rails 认识起来较为简单,特别是搭配着 Agile Web Development With Rails (2nd Edition),跟随例子走基本就认识了 Rails 的各个方面。再跟自己的已经知道的知识结构做结合,也算非常平滑的学习曲线。

  而当下,你在认识 Rails 的时候,你会发觉好多附加的东西,比如 CoffeeScript,Asset Pipeline。而 Rails 4 好多新特性如 Cache Digest (Russion-Doll caching), TuoboLinks,前端偏斜更是会让新手立即晕掉。我们现如今已经听得见愈来愈多的新手发牢骚 Rails 难学了。DHH 当初发表一篇很出名的博文 Rails is omakase,中文翻译版见这边。在 DHH 和 Rails Core Team 眼中,Rails 结构期望提供的是我们认为的 Web 开发设计的极佳实践,而这种极佳实践,必定跟我们过去无尽岁月以的开发设计亲身经历相关。毫无疑问,大部分 Rails 的结构演变历程跟 Web 程序开发的演变历程是同样的。并且对于新手入门而言,在没有亲身经历过足够的痛的条件下,要理解好多不断改进就成了一件事非常容易的事儿。特别是当当前 Web 开发设计现在开始向前端偏斜的时候,对开发者的能力素质要求愈来愈高,全能化,全栈化,摆在新手入门面前的是个极大的探索。

  并且,我或是认为,Rails 是一个适宜新手入门认识的 Web 开发设计结构,只是在学习方法上必须有所更改。

  越思考这种问题,我越同意 Kevin 在第二期简介的温室培养模式。他尽量会让新手入门在温室自然环境中成长,也只是让我们认识最朴也就是让他们了解最朴素的东西,而不用过多追求一些细节,以最快速度看到一个站点的建造过程。甚至 Ruby 语言的很多细节,元编程之类,都不需要在一开始了解。Rails 之于其他框架更适合初学者的原因在于它尽管代表着目前 Web 开发的先进浪潮,但是都提供了一个默认值。而这个默认值非常关键,它能让初学者免于选择也不用关心细节,几分钟就可以开始上手练习。这种方式会把一些开发上的痛延缓到了后期发生,也就是一些初学者在向中级水平发展时会经历的一段痛苦时光,但是这点恰恰在我认为是对初学者友好的。

  从我自己的经历而言,我在键盘上敲点东西然后最后在浏览器里面看到真实效果,获得的成就感是最大的,也会让我自己更有动力去学习。这也是我认为 Agile Web Development With Rails (AWDWR) 这本书特别适合初学者学习 Rails 的原因,因为它让你关注如何去构建一个站点,其次让你关注如何用 Rails 去构建,内容循序渐进,很多 Rails 中相对高级的特性都放到了最后去介绍,而这些特性当你有了一定基础以后其实也就并不是那么的难了。美中不足的是,AWDWR 这本书中文版只出到第 2 版,跟最新的 Rails 版本脱节太久,而啃英文书对大多数初学者来说都不是一件容易的事情。虽然学好英语对于学好 Rails 是一个基本条件,但是我还是希望初学者能在一开始学习的时候少因为语言问题而多碰壁。这个问题目前来看并没有很好的解,不过希望 Terry 和我能在未来改善一下现状,如果时间上允许的话,我们很希望能原创一本面向初学者的中文书。

  偷偷的说一下,这里有一段我未经 Terry 许可偷偷录的一段关于初学者应该如何学习 Rails 的讨论,非常值得大家收听


本文首次发布于开创者素材 ,转载请注明出处,谢谢合作!

相关文章推荐