Ruby 标准库¶ ↑
Ruby 标准库是一个大型的类和模块集合,你可以在代码中 require 它们来获得额外的功能。
以下是库和扩展的概述,以及每个库和扩展的简要描述。
库¶ ↑
-
MakeMakefile
:一个用于为 C 扩展生成 Makefile 的模块 -
RbConfig
:有关你的 Ruby 配置和构建的信息 -
Gem
:一个 Ruby 的包管理框架
扩展¶ ↑
-
Coverage
:为 Ruby 提供覆盖率测量 -
Monitor
:提供可重入的互斥锁 -
objspace
:扩展ObjectSpace
模块,添加用于内部统计的方法 -
PTY
:创建和管理伪终端 -
Ripper
:提供将 Ruby 程序解析为 S 表达式的接口 -
Socket
:访问底层操作系统套接字实现
默认 gem¶ ↑
-
默认 gem 随 Ruby 版本一起发布,也可以作为 rubygems 使用。
-
默认 gem 不能从 Ruby 安装中卸载。
-
可以使用 rubygems 更新默认 gem。
-
例如:
gem update json
-
-
默认 gem 可以与 bundler 环境一起使用,例如
unbundled_env
。 -
默认 gem 可以在 Gemfile 中使用任何版本。
-
例如:
gem "json", ">= 2.6"
-
库¶ ↑
-
DidYouMean
(GitHub):在 Ruby 中提供“你是不是想说?”的体验 -
ErrorHighlight
(GitHub):突出显示代码中的错误位置 -
Forwardable
(GitHub):提供将指定方法委托给指定对象的功能 -
OptionParser
(GitHub):用于命令行选项分析的面向 Ruby 的类 -
OpenStruct
(GitHub):用于构建自定义数据结构的类,类似于Hash
-
OpenURI
(GitHub):URI::HTTP
、URI::HTTPS
和URI::FTP
的易于使用的包装器 -
PrettyPrint
(GitHub):实现用于可读结构的漂亮打印算法 -
SecureRandom
(GitHub):安全随机数生成器的接口 -
Shellwords
(GitHub):使用 UNIX Bourne shell 的单词解析规则操作字符串 -
UN (GitHub):用于替换常见 UNIX 命令的实用程序
扩展¶ ↑
-
IO.console
(GitHub):IO
类的扩展,包括IO.console
,IO.winsize
等。 -
StringScanner
(GitHub):在String
上提供词法扫描操作
工具¶ ↑
捆绑 gem¶ ↑
-
捆绑 gem 随 Ruby 版本一起发布,也可以作为 rubygems 使用。
-
它们仅与 Ruby 版本捆绑在一起。
-
它们可以从 Ruby 安装中卸载。
-
当与 bundler 一起使用时,需要在 Gemfile 中声明它们。
-
库¶ ↑
-
minitest:一个支持 TDD、BDD、模拟和基准测试的测试库
-
power_assert:Ruby 的 Power Assert
-
rake:具有类似于 make 的功能的 Ruby 构建程序
-
test-unit:MiniTest 的兼容层
-
rexml:一个用于 Ruby 的 XML 工具包
-
rss:支持各种基于 XML 的“feeds”的库系列
-
net-imap: 用于 Internet 消息访问协议的 Ruby 客户端 API
-
net-pop: 用于 POP3 的 Ruby 客户端库
-
net-smtp: 用于 Ruby 的简单邮件传输协议客户端库
-
matrix: 表示数学矩阵
-
prime: 质数和因式分解库
-
rbs: RBS 是一种用于描述 Ruby 程序结构的语言
-
typeprof: 一种基于抽象解释的 Ruby 代码类型分析工具
-
debug: Ruby 的调试功能
-
racc: 用 Ruby 编写的 LALR(1) 解析器生成器
-
mutex_m: 用于扩展对象使其像互斥锁一样处理的混入模块
-
getoptlong: 解析命令行选项,类似于 GNU C 的 getopt_long()
-
base64: 支持使用 Base64 表示形式对二进制数据进行编码和解码
-
bigdecimal: 提供任意精度的浮点十进制算术运算
-
observer: 提供 Ruby 中发布/订阅模式的机制
-
abbrev: 为给定的一组字符串计算一组唯一的缩写
-
resolv-replace: 将
Socket
DNS 替换为Resolv
-
rinda: Ruby 中的 Linda 分布式计算范例
-
drb: 用于 Ruby 的分布式对象系统
-
nkf: 网络汉字过滤器 (Network Kanji Filter) 的 Ruby 扩展
-
syslog: 用于 POSIX 系统日志设施的 Ruby 接口
-
csv: 提供读取和写入 CSV 文件和数据的接口