告别单调乏味的任务:“使用Ruby编写日常脚本”

很可能,你在工作中会做一些无聊的、重复的与数据相关的任务——只要告诉计算机怎么做,计算机就可以轻松地完成这些任务。

“在一张桌子上,测试人员正在手工将测试数据输入数据库。另一方面,程序员正在筛选版本控制系统的输出,试图找到她想要的文件。第三种情况是,业务分析师正在将报表中的数据复制到电子表格中。为什么这些人在做电脑可以做得很好的工作?”《用Ruby编写日常脚本》一书的作者brianmarick问道。

好吧,这是因为他们做了以下事情之一:

这些都是马里克在书中提到的。虽然大多数人可能会把Ruby与(相对)热门的railsweb开发框架联系在一起(参见“07年你需要了解的五大技术”),Marick认为Ruby是一种独立的脚本语言。他说它“学得快,写起来容易。”

老实说,我对Ruby感兴趣的主要原因是我想学习Rails,而不是编写独立的脚本。然而,在阅读了本书的几个例子之后,我同意Ruby本身有一些优势。

我的Ruby代码似乎比用Perl编写的脚本要晚几天或几周阅读。Perl是一种强大、灵活、健壮的语言,可以轻松地处理Marick提出的所有问题,但几个月后我发现很难阅读自己的Perl代码,更不用说其他人的了。另一方面,Ruby代码片段

@数组=[1,2,3,4]

$n=@数组长度

$日期=时间到了。现在

似乎很直观。

但对我来说,Perl的一个主要缺点是我不必编写面向对象的代码,因为既有面向对象的编程,也有非面向对象的Perl语法。这对于一个懒散的编辑来说是很好的,他不想和OOP纠缠,但是如果他需要学习的话,就不是很好了。另一方面,Ruby只是面向对象的,这迫使我开始在对象中编码(和思考)。

在使用Ruby编写日常脚本时,Marick提出了四个问题,然后引导读者了解解决这些问题所需的代码。他首先编写代码来比较文件清单,然后编写脚本来从版本控制系统获取信息,从网站“刮”出数据(并将其转换为电子表格可读的逗号分隔文件),并监视长时间运行的程序。

请注意,这不是一本学习Ruby编程语言的综合性书籍。