Ruby 非常适合构建 internal DSLs(特定领域语言)——读起来像是针对某个领域的专用迷你语言的 API。Ruby 的灵活语法(可选括号、blocks)、元编程和 instance_eval 使得创建富有表现力、可读的 DSL 成为可能。这就是为什么 Rails、RSpec 和许多 Ruby 工具具有如此优雅、声明式的 API。
DSL 的样子(你已经见过)
describe
it
expect(user).to be_valid
.application.routes.draw
resources
get ,
gem ,
