译文 | Ruby 2015 年回顾

Posted OSC开源社区

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了译文 | Ruby 2015 年回顾相关的知识,希望对你有一定的参考价值。


我们来到了 2015 年末,今年对于 Ruby 来说是重要的一年。我想回顾一下今年重要的主题和其中的故事是很有必要的。就像来一次敏捷过程回顾,我将把 2015 年的工作划分成几个主题,以此回顾下我们做的怎么样。


为了保证我们想法的一致性,我将会先定义几个要考虑的主题。其实每年评价 Ruby 是否成功的完成了冲刺,都会通过以下几个方面是否来评价。

  • 语言的改进

  • 社区的发展

  • 跟上编程业界的其他方面


这些就是我预先定义的主题。为了衡量 Ruby 社区做的如何,我将回顾本年度上述主题相关的一些重要的博客、文档、视频。我相信肯定会疏漏,同时我也相信小伙伴儿们肯定会在评论里补上的,对吧?


最后,这一年里与 Ruby 相关的任何值得回顾的事件都可以来交流下,今天我有充足的时间来和大家讨论。我猜肯定会有好多机智的读者想向我的列表里加东西的。


语言的改进


Ruby


Ruby 2.2 大约一年前就发布了,但我将把它算在今年里。2.2 版本添加了很多的语言方面的东西,下列的文章就对此进行了介绍:

  • 使调试更加容易。

  • 给 Ruby 垃圾收集器一个巨大的性能提升,这可能是很长时间内最好的语言改进之一。

  • 当然,另一个内存垃圾回收方面的改进是,保证了垃圾回收时性能一致性。

  • 还有一些也不能被忽视。

  • 今年圣诞节当天 Ruby 发布了 2.3 版本

  • ,下面是关于这次发布的一些介绍:

    • 你可以通过一个命令行选项,然后看看还要做多少工作来处理代码中的字符串。

    • 如果你还没有听说过,那么你肯定是生活在石器时代。

    • 所有版本都会包含 bug 修复,但(译者注:2.2 版本引入了一个内存泄露的 Bug)。这篇文章详细介绍了 2.3 版本中这个 Bug 是如何修复的,值得一读。


有时语言的改进意味着告别旧版本。就是这样的。《晚安吧,Ruby 1.9.3》,我们会记住你的。


所有 Ruby 解释器改进中最值得期待的也是最重大的是 JRuby 9000:

  • 列举了一些主要的改进项。

  • 很值得一看,看过你便知道 JRuby 9000 有多重要。Charles Nutter 和他的团队值得大大的支持和称赞。


提高对 Ruby 的掌握的另一种方法是学习新鲜而且和有用的东西。下面是很多这方面的文章:

  • 这篇 Reddit 上的文章《》,吸引了很多人的回复。

  • 认真学习下《》如何?真的,你必须得看看。

  • 这里还有一个很棒的网站《》,全都是关于 Ruby 的东西。

  • 你永远无法真正了解,你可以吗?


基于下面的文章,我认为 2015 年是属于 Ruby“深入,性能相关文章“的:

  • Richard Scheeman(今年的另一个关于 Ruby 的 MVP 博客)写的两篇关于 Ruby 中堆转储的文章,,。

  • 这是一篇关于的文章。

  • 你有没有被 Ruby 垃圾收集器设置烦到头大?我也是,但是。


年度之战


最后,当一个语言给它的社区提供选择,它的水平就上升了,RSpec 和 Minitest 之间的战争就是一个很重要的例子:

  • 如果你默认选择 RSpec, 也许你下次 尝试 时会有惊喜。

  • 如果你决定选择一个更好的,这。


好吧,好吧,也许“年度之战”只是一个噱头,但我真的希望这一年关于 Minitest vs RSpec 有更多讨论。


Rails


像 Ruby 2.2 一样,Rails 4.2 也是大概在去年 12 月底的时候发布的。我也准备再次将此消息当做 2015 年的存货,因为其发布所带来的反响也是直到经年才真正升温起来的。如下是它所带来的东西:

  • 当然,想了解发生了哪些变化,最好的地方就是了, 你会在其中看到像ActiveJob,Asynchronous Mails,以及 Adequate Record 这些东西。

  • 容易上手,也让队列系统的运用变得易如反掌。

  • 发送异步消息邮件这样的普通任务也变得了。


Rails 会随着后端网络环境的变化而变化。下面是一些建议,用来帮你缓解即将到来的转型压力:

  • Rails 越来越多的被用来创建 API,而。哦,。

  • 有没有很棒的 Rails gem 的合集? 。


Rails 主要的一个问题来源总会是安全。这次发布对此也有了一些改进:

  • 这里告诉你如何确保 配置工作。

  • 理解最常见的一些攻击方式,像, 它们能长久的改善你的工作。

  • 很明显, 4.2 有几个发布点大多数都是关于安全和 bug 修复的。详细信息见。


当然,也有很多讨论 Rails 性能方面的文章:

  • 《业界观点》推出的四篇《》的系列文章。

  • 你在读上面这几篇文章前,你肯定得理解《》。

  • 一旦你理解了性能特征,你最终还是得看看《》,这是一个两篇的系列文章,由另一位社区 MVP 贾斯汀 维斯(Justin Weiss)发表。

Rails 4.2.x 相比于 Ruby 来说在性能方面其实并没有太大的改进,但是为 5.0 打下了基础,我相信在 5.0 版本中性能将会有重大提升。


Rails 之外


不消说,其它基于 Ruby 的非 Rails 的框架和库从各个方面也提升了 Ruby。下面是一些 2015 年里很酷炫的新东西。

  • 迎来了它重要的一年,如果你需要一个面向对象的强大的非 Rails 的 web 框架,Lotus 值得一试。

  • 对于来说,2015 年也是很重要的一年,Opal 是一个广受欢迎的 Ruby-to-javascript 编译器。

  • 跟 Opal 比较相关的是,Volt 是一个 Web 框架,它通过 Opal 来让开发者使用 Ruby 进行 Web 前台和后台开发。

  • 是一个新的 web 框架,它的目标是使实时应用开发更容易,的确值得一看。


壮大社区


任何一门想要繁荣发展的语言都需要让越来越多的人知道它。对于那些 Ruby 新人,有一些博客可以帮助你早日成为 Ruby 家族的一员:

  • 我们亲爱的 Kingsley Silas 的博客,。

  • Nihal Sahu 写在 SitePoint 上面的。


技术的多样性毫无疑问成为了热门话题,像 和 都是用来发掘 Ruby 语言的多样性的,下面也是一些相关的故事:


Stephanie Burns。各种编码训练营正在如火如荼的举办,这种形式吸引了很多人加入社区。


一些组织,比如 Makers Academy 为在他们那上课的女学生设立了。


一书的出版真的让我欣喜万分,它可以吸引小孩子编程的乐趣。如果你还没有买这本书,强烈建议你买一本送给小朋友。


总的说来,今年 Ruby 多样性的发展还不错。这里预祝在 2016 年这些项目能够获得更多的支持。


跟上时代


对于任何编程语言,与语言本身之外其它技术相得益彰也是语言持续发展的关键。Ruby 在核心设计上就遵循这个准则,它的两个解释器(MRI 和 JRuby),使其能够拓展到外部运行时环境。下面是 2015 年的一些与 Ruby 相关的重大技术话题:


Docker


容器化在 2015 仍然十分流行,下面是一些有关 Ruby 和 Docker 的博文:

  • 来自 Travis Reeder 的介绍了为你的 Ruby 应用建立最小化的 Docker 镜像;

  • 介绍了如何利用 Docker 简化 Rails 的测试;

  • Nick Gauthier 提供了如何利用 Docker 进行并行化测试的。


确实,如果你在 2015 没有看到 10 篇以上有关 Docker 的博文,就会显得力不从心。有时间学一下 Docker 吧,它真的值得。


Slack


你正在用 Slack 吗?所有人都在用呢!它真的很棒,对拉动发达国家的 GDP 都起了作用。Ruby 配合 Slack 也很不错,看看吧:

  • ,挺有趣的;

  • 或者用 来做,Slack 喜欢各种框架;

  • 还有一个 Ruby gem,为你做了 的所有工作。


其它编程语言


用 Ruby 的人经常回去学习和利用其它编程语言来进行更好的编程。下面是一些关于其它编程语言的故事:

  • Parse 从而获得更好的效果;

  • Rust 在今年赢得了很多关注,这篇由 Robert Qualls 写的展示了怎么利用 Rust 来与 Ruby 共同编程;

  • Ruby 届的新宠毫无疑问要是 Elixir 了,看一下这篇,来看看大家为什么赌 Elixir 会是下一个大事件。


最后,还有两件影响 Ruby 的两个事件:

  • React 现在是 javascript 框架的又一选择,可以学习一下如何利用它和 ;

  • 如果你用 Ruby 写 web app,而不是 DHH,不如看看最近很火的微服务架构。这篇展示了如何微服务架构你的 Rails 应用。


哪些还不奏效


大凡回顾,都要花点时间总结一下过往的疏漏。这方面的事情容易使人消沉,如此就得大费周章了,而我在这儿将只提一提几项:

  • 把 Spring 加入到 Rails 开发流程中过去的反向总是褒贬不一。 许多人总觉得像是要整个放弃 Spring。

  • Adam Hawkins 就社区需要作出的完善还有要制定的高级别的路线图提了。

  • 前面我已经提过微服务了,相当多的人对此持抵触态度。Nick Sutterer (他是许许多多 gem,以及 的作者) ,让你在把整个微服务弄得一团糟之前能用上好的设计。

  • 最后,不管会发生怎样的改良? 会有人用它们吗? 用了,不过我并没感觉有许多人用了。不知道我们应不应该用。

  • 2015 是我们认识到的一年。我的意思是说,。


我确信在 Ruby 的领域还有更多东西以失败而告终,尚未提及。你可以在评论中告诉我。


还有….我们的远景!


2015 还有几天就过去了。它对于 Ruby 这门在我看来仍然有一个光明未来的语言而言是重要的一年。未来的 2016 会发生什么呢?你怎么看?你可以把你的想法放到评论中或者。让我们携手并进,在 2016 让 Ruby 和我们的社区变得更好吧。新年快乐!

本文地址:http://www.oschina.net/translate/a-retrospective-on-ruby-in-2015

原文地址:http://www.sitepoint.com/a-retrospective-on-ruby-in-2015/



以上是关于译文 | Ruby 2015 年回顾的主要内容,如果未能解决你的问题,请参考以下文章

2015 年 Ruby 大盘点

Ubuntu 的十年回顾

2014年终总结回顾与2015年工作总结

我的技术回顾因ABP框架触发DevOps云原生之路-2020年

MongoDB 2015回顾:全新里程碑式的WiredTiger存储引擎

Docker 2015年度回顾