如何在2020年学习Ruby on Rails?分步指南

Wei Xiao
10 min readOct 2, 2020

--

您刚刚迈出编程的第一步,并且已经遇到了一个常见问题:您只是不知道从哪里开始以及首先要学习什么。但是,您知道要使用什么技术:Ruby on Rails。恭喜你!您已决定加入一个由志同道合的人组成的充满活力的社区。

我们的OnlineITguru团队由致力于Ruby编程语言的人员组成,我们希望在您学习Rails的过程中为您提供帮助。遵循我们简单的分步指南,了解如何学习Ruby on Rails。

1. Ruby on Rails 101,或掌握入门级别

学习CSS,HTML和JavaScript

您可能想知道为什么CSS,HTML和JavaScript总是一起使用。简而言之,HTML借助标签来构建网站的内容(表格,块,图像等)。CSS然后说出这些网站元素应如何显示。最后,JavaScript使网站动态化,因此它可以响应单击,创建密码或更改表单输入中的值。Ruby On Rails在线培训中的更多信息

CSS,HTML和JavaScript是成为前端开发人员所需要学习的技术。由于Ruby on Rails是一个完整的框架,涵盖了后端(服务器上发生的事情)以及前端Web开发(在浏览器中发生的事情),因此从前端基础知识开始很重要。

这里有一些工具可以帮助您学习前端Web开发的基础知识:

  • 关于Udacity的HTML和CSS入门课程不遵循类似课程的结构。此Udacity课程使您像真正的前端开发人员一样思考:您不会专注于语言的语法。相反,您将逐步学习如何将设计模型转换为网页。而且,该课程包括一章有关响应式设计技术的章节,这在有关HTML / CSS的课程中很少教授。
  • Codecademy的“制作网站”课程将在您建立第一个网站时教您CSS和HTML的基础知识。该课程是免费分发的,但是,您可以通过付费计划获得其他功能。

在Rails之前学习Ruby

需要明确的是,Ruby是一种编程语言,而Ruby on Rails(提示:如果您只说“ Rails”,您会更加了解)是一个Web应用程序框架-一组简化的网站构建的预编写代码。Rails扩展了Ruby语言并解决了日常问题,因此您无需重新发明轮子。

初学者通常会想知道在迁移到Ruby on Rails之前是否需要先学习Ruby语言。我们认为您应该。我们的建议是先学习Ruby。当然,Rails提供了出色的解决方案。但是当您遇到更严重的问题时,您将不得不使用Ruby代码。

学习Ruby的方法有很多:在线课程,书籍,视频教程,甚至是指导计划。如果您想独立学习,则可能会深入阅读当今流行的书籍和在线课程。但是请记住:无论您如何学习Ruby,成功的方法都是实践所学的知识。初学者的一个常见错误是在没有实践的情况下获得书本知识:理论很棒,但是如果您不能将其付诸实践,那么它就不值钱了。

我们挑选了一些书籍和课程来帮助您学习Ruby的基础知识:

  • 密码学校。Code School是一个在线平台,您可以在其中掌握Ruby和其他编程语言,包括HTML / CSS,JavaScript,Python和.Net。使Code School脱颖而出的是他们的娱乐方式:每节课都有一个故事情节,您在阅读简短说明,观看视频教程以及直接在浏览器中练习编码时会遵循这些故事。我们的RubyGarage小组建议您免费学习Try Ruby课程。实际上,Code School课程是我们自己的教育计划的一部分。自2011年成立以来,RubyGarage一直在运行Ruby / Rails课程。我们在Code School上实施家庭作业,以使我们的学员更好地融入Ruby / Rails技术。
  • 克里斯·派恩(Chris Pine)学习编程(Ruby系列的方面)。这是面向编程初学者的书籍。从编写第一个单行程序到创建基本的视频游戏,我们将认真指导您完成整个学习过程。学习编程要求编程只能通过练习来学习。

学习Ruby on Rails

一旦了解了Ruby,您就可以开始学习Rails!许多新手开发人员都在想,如果还有其他框架,为什么还要学习Ruby on Rails。但是,答案很明确:该Web应用程序框架具有广泛的即用型功能,部署速度和可伸缩性,因此是适合初创企业的理想解决方案。让我们看看哪些教育平台可以帮助您在线学习Ruby on Rails,以及应该阅读哪些书籍来掌握RoR的基础知识。

通常,Rails的在线课程看上去都一样,并提供相同的产品。我们挑选了一些我们个人喜欢的平台:

  • 密码学校的僵尸Redux Rails课程。这门课程的好玩的名字不应让您傻瓜:您将学习CRUD原理,Active Record模型和MVC体系结构。本课程是为那些已经具备编程,Web开发和Ruby知识的人设计的。顺便说一句-成功完成本课程后,您会获得一个可以戴在简历上的徽章。
  • Codecademy的Learn Ruby on Rails课程是为初学者设计的。Codecademy是一个学习技能的平台,您可以在完成课程后直接将其应用于现实生活中。在Codecademy,您将学习如何构建类似于Flipboard的主页,以及如何使用Git管理代码版本以及其他许多有用的技能。Codecademy课程将理论与浏览器内模拟器相结合来练习编码。一个小技巧:在阅读参考资料时做笔记,以帮助您保留信息。

我们还挑选了一些我们的Ruby / Rails开发人员喜欢并推荐的书。

  • Sam Ruby,David Thomas和David Heinemeier Hansson的《使用Rails 4进行敏捷Web开发》。这是包括Rails安装和体系结构(模型,视图和控制器)在内的基础知识的终极指南。在按照本书的实际内容创建第一个店面之前,您还将学习一些Ruby。在本书中,敏捷Web开发的复杂性逐渐增加。本书的实践方法受故事驱动的章节,迭代练习和手持叙述的支持。
  • Michael Hartl撰写的Ruby on Rails教程。许多Ruby / Rails开发人员承认,他们仅通过遵循Michael Hartl的Rails教程就已经学会了Rails。该书将帮助您,并指导您完成Web开发的整个周期:从编码最佳实践到编写测试。所有章节都与练习相关联,以练习您刚刚学到的内容;主要项目是类似Twitter的应用程序。

让自己成为Ruby on Rails导师

让自己的导师可能是学习Ruby on Rails的最好方法。首先,您可以通过在身边安排可以解释困难概念,查看代码并为您提供更好解决方案的人员来加快学习速度。其次,导师是支持者,不会让您绊倒问题或犯导师以前的错误。RubyGarage的团队中建立了一种指导文化,以在初级和高级开发人员之间建立更紧密的关系并加速学习。

2.提高您的技能:Ruby / Rails中级水平

学习完Ruby / Rails基础知识之后,您可能想进一步开发并构建具有诸如数据导入/导出,公共/私有API和管理面板实现之类功能的更复杂的应用程序。这里有一些资源可以帮助您到达那里:

成为高飞的Rubyist

您不应该低估书籍在学习编程中的作用。尽管技术发展迅速,但有关编程的好书与时俱进,并在新发行和更新后得到更新。为了避免迷失在Ruby和Rails的许多书籍中,我们为您选择了一些特别好的资源。以下是一些书籍,其中包含有关飞速发展的Rubyist的扩展Ruby功能的信息:

  • 戴维·布莱克着的《成熟的红宝石手》(第二版)。本书假定您具有一定的编程背景,但是,在阅读时,您始终可以研究不熟悉的概念。从第一页到最后一页,Black都会向您介绍一种面向对象的编程方法。对于经验丰富的开发人员,本书可作为参考。初学者Rubyists可以从学习基础知识(安装Ruby)到更高级的动态Ruby功能获得一个不错的开始。
  • David Flanagan和Yukihiro Matsumoto编写的Ruby编程语言。这本书是Ruby创作者Yukihiro Matsumoto和JavaScript / Java开发人员David Flanagan必读的。在开始阅读之前,只需确保您已经有一定的编程经验。本书没有提供练习练习,可能会使一些读者失望。通常,这是一本结构合理的参考书,涵盖了与Ruby相关的所有内容。

在Ruby on Rails上练习

实践使完美。在开始时,您将学习Ruby的语法并遵循预先编写的案例。但是随着您逐渐成为一名Rubyist,您需要将所学的知识付诸实践。

为了加深您的知识,建议阅读Obie Fernandez撰写的《 The Rails 4 Way》。Rails开发人员的所谓“圣经”以参考书的形式出现,每当您对某个主题有任何疑问时都可以参考。在这里,您可以找到基本有关Rails核心的任何问题的答案。读者还会记下深入的叙述,并专注于有关宝石和工艺优化的实用章节。

加入Ruby / Rails社区

不要忘记,Ruby / Rails是最友好,最活跃的社区之一!千万不要错过加入将分享见解和支持您的人们的机会。以下是一些与Ruby / Rails社区联系的有用资源:

  • StackOverflow和Quora。StackOverflow适用于各种开发人员:在这里您可以提出与软件开发主题相关的任何问题,并获得热情的答复。另一方面,Quora是一个在各个领域共享见解的平台。在Quora上,您可以提出技术问题以及较简单的问题,例如您应该学习哪种编程语言。
  • Ruby on Rails链接:Rails Slack社区。Slack是团队中非常受欢迎的使者。通过加入Slack团队,您可以轻松地与一群对Rails感到生气的人交流!闲聊被组织成主题,包括前端,编码和工作(适用于寻找工作的人)。
  • GitHub上。加入GitHub上的现有项目,以提高您的技能,与他人联系并在创建真实软件时获得宝贵的经验。即使您无法编写很长的代码字符串,也可以通过修复或表示形式对项目做出贡献。如果您想了解有关GitHub及其优势的更多信息,请阅读有关开源项目及其在开发人员生活中的作用的文章。

3.高级Ruby / Rails-还有很长的路要走!

一旦了解了Ruby和Rails的基础知识,您仍然有工作要做。构建自己的应用程序以获得尽可能多的经验很重要;犯错误并学习如何纠正错误;并迷失在概念中并找到解决方案。詹妮弗·德瓦特(Jennifer Dewalt)就是一个令人鼓舞的例子,他在180天内建立​​了180个网站:每当您认为自己要放弃时,就想想她的令人难以置信的愿望。

要深入了解Ruby,请注册Ruby认证免费现场演示

一旦开始编写自己的代码,提高输出质量就很重要。注意编码最佳实践,包括DRY(不要重复自己),KISS(保持简单,愚蠢)和YAGNI(您不需要),它们可以编写可维护的代码并防止您重新发明轮子并添加镀金(不必要的额外功能)。

将来,您可能会作为团队的一部分来构建Web应用程序。这就是为什么必须学习Git的原因,Git是一个版本控制系统,用于维护您的代码并保存最新版本。Git是一种有用的编程实践,因为它可以帮助您备份对代码的更改并监视工作进度。

结论

即使您可以找到许多勤奋而热情的资源,学习编码方法也是一项挑战。我们已经分享了我们个人喜欢的书籍和网站,并建议为个人学习。但是,无论选择哪种学习方法,都请记住将理论付诸实践,并从经验丰富的开发人员那里获得支持。不要问自己学习Ruby on Rails需要多长时间;只是设定一个目标并尽力实现它。祝好运!

--

--

No responses yet