看看这段 code
~~~
require 'open-uri'
open("http://www.ruby-lang.org/en") do |f|
f.each_line {|line| p line}
puts f.base_uri # <URI::HTTP:0x40e6ef2 URL:http://www.ruby-lang.org/en/>
puts f.content_type # "text/html"
puts f.charset # "iso-8859-1"
puts f.content_encoding # []
puts f.last_modified # Thu Dec 05 02:45:02 UTC 2002
end
~~~
在第一行是 require。这是一个 Ruby 中在你所写的脚本中加入其他资源(如:Ruby Gems 或者是你写的其他东西)的功能(features) 的方法。与其一次给你所有功能,Ruby 会问你你打算使用什么。这可使你的程序保持简洁,又可当做之后其他程序设计师阅读你的程序时的参考。
# 等一下!功能 (Features) 还有另外一个名字
* * * * *
我在这里把他们叫做「功能(features)」。但实际上没人这样叫。我这样做只是便于记忆,使你在学习时先不用理解「行话」。在继续进行之前你得先知道它们的真名 modules(模块)。
从现在开始我们将把这些我们 require 进来的功能称作 modules(模块)。我会这样说:「你想要 require open-uri module。」也有人给它另外一个名字:「函数库(libraries)」。但在这里我们还是先叫它们 modules (模块)吧。
# 加分习题
* * * * *
1. 上网查找require 与 include 的差异点。它们有什么不同?
2. 你能 require 一段没有特别包含 module 的脚本吗?
3. 搞懂 Ruby 会去系统的什么地方找你 require 的 modules。
- 笨方法更简单
- 习题 00: 准备工作
- 习题 01: 第一个程序
- 习题 02: 注释和#号
- 习题 03: 数字和数学计算
- 习题 04: 变量的命名
- 习题 05: 更多的变量和输出
- 习题 06: 字符串和文字
- 习题 07: 更多输出
- 习题 08: 输出,输出
- 习题 09: 输出,输出,输出~
- 习题 10: 那是啥?
- 习题 11: 提问
- 习题 12: 模块
- 习题 13: 参数,解包,参数
- 习题 14: 提示和传递
- 习题 15: 读取文件
- 习题 16: 操作文件
- 习题 17: 更多的文件操作
- 习题 18: 命名,变量,代码,函数
- 习题 19: 函数和变量
- 习题 20: 函数和文件
- 习题 21: 函数可以传入信息
- 习题 22: 到现在你学到了什么?
- 习题 23: 阅读一些代码
- 习题 24: 更多练习
- 习题 25: 更多更多的练习
- 习题 26: 恭喜你,现在来考试了!
- 习题 27: 记住逻辑关系
- 习题 28: Boolean表达式练习
- 习题 29: 如果
- 习题 30: Else 和 If
- 习题 31: 做出判断
- 习题 32: 循环和数组
- 习题 33: While
- 习题 34: 存取数组里的元素
- 习题 35: 分支和函数
- 习题 36: 设计和测试
- 习题 37: 重视各种符号