基于目前学习的Ruby知识并有Ruby标准库的帮助,你应该能够构建一个真实世界的应用程序了。
在开始时,我提供了一个示例应用程序,这个程序中使用了大量的我们已经讨论过的Ruby特征。这个程序读取一个简单的文本文件以得到一组股票符号和一个人所拥有的股份数并且在一个普通金融网站(finance.yahoo.com)检索股票价格。在检索股票价格以后,它计算这个人的portfolio(股份数×每份股票的价格)。
不只是展示简单的Ruby语法和类/对象结构,这个简单应用程序还使用了Ruby内置的Array类和I/O特征来从一个文本文件中获取符号和股份信息。然后,它使用Ruby标准库类来连接到金融网站并且检索一个HTML页面-它包含相应于提供的每种符号的股票价格。最后,它大量地使用了正规表达式和代码块来从通过HTTP连接返回的HTML中定位或取得股票价格。
为使应用程序工作,请下载并把本文相应的源码文件解压到你的文件系统上。在解压后,将生成一个examples2文件夹。共有4个Ruby代码文件(.rb文件)和一个文本文件holdings.txt。fetcher.rb文件用作执行股票行情检索的代码。为了运行这个示例应用程序,打开一个命令提示符并使用Ruby运行fetcher.rb文件即可。
这个holding.txt文件包含实例股票符号和拥有股份的理论数目。holding.txt的当前内容包含相应于3M,Wells Fargo和Pfizer的符号,而且看上去如下所示:
- MMM 11
- WFC 20
- PFE 5
你可以在这个文件中添加你自己的符号和虚构股份。当执行这个程序时,你将会得到如下图相似的结果。