11 月 19 - 20 日 Apache Pulsar 社区年度盛会来啦,立即报名! 了解详情
写点什么

Boson:超越 Rake 的另一选择?

  • 2009-10-31
  • 本文字数:845 字

    阅读完需:约 3 分钟

相信大多数 Ruby 开发者对 Rake 都不陌生,而那些 Rails 开发者更是每天都要与它打交道。每天看着 task…do…end,你需要一些新鲜玩意儿了, Gabriel Horner 为我们带来了一个新的命令 / 任务框架,那就是 Boson

Boson 借鉴了 Rake 和 Thor 的成功经验,同时也做了一些创新。例如,你既可以像使用 Rake 那样,通过命令行来执行 Boson 的命令,也可以在 irb 中运行所有这些命令。

Boson 的设计理念非常简单——任务即方法,方法即任务。Boson 库就是普通的 Ruby 模块,而 Boson 命令就是这些模块中的方法,每个库还能拥有自己的名字空间。所有的命令都是纯 Ruby 写的,对 Boson 没有任何依赖,当你决定不再使用 Boson 时,仍然可以在 irb 中运行它们。Gabriel 的博客中详细说明了如何在命令行及 irb 中使用 Boson ,以及如何用 Boson 来增强 irb

例如,可以像下面这样在 Bash 中执行 Boson 命令:

复制代码
bash> boson libraries
+----------+----------+------+--------------+
| name | commands | gems | library_type |
+----------+----------+------+--------------+
| core | 6 | | module |
| web_core | 3 | | module |
+----------+----------+------+--------------+
2 rows in set

创建命令也比较简单,只需简单地定义一个模块和相应的方法就 OK 了。

复制代码
# Let's list boson's default libraries
module Brain
# Help Brain live his dream
def take_over(destination)
puts "Pinky, it's time to take over the #{destination}!"
end
end

将上面的代码放置在~/.boson/commands/brain.rb中,随后调用:

复制代码
bash> boson take_over farm
Pinky, it's time to take over the farm!

究竟 Boson 这只新轮子有多好,它是否能够超越 Rake?每个人都有自己的评判标准,例如 John Barnette 在最近的一篇博客上表示——把 Rake 当作一个封装任务的引擎固然没错,但那并不是 Rake 的全部,它更是一个解析依赖的引擎。现在要给出一个结论,可能为时尚早,不妨先 gem install boson,与 Boson 亲密接触一下吧!

2009-10-31 01:141220
用户头像

发布了 135 篇内容, 共 55.5 次阅读, 收获喜欢 43 次。

关注

评论

发布
暂无评论
发现更多内容

一文读懂 MySQL 索引

说故事的五公子

MySQL 数据库 索引

前端培训学习的就业前景是什么样的

小谷哥

两数之和

掘金安东尼

算法 10月月更

数字化转型:营销数字化

Taylor

数字化 营销数字化 客户数据平台 CDP 营销数据中台

又一里程碑!阿里首推Java面试通关手册,必须人手一份!

Geek_0c76c3

Java 数据库 程序员 架构 面试

web3 chainlink 预言机喂价、VRF

1_bit

智能合约 web3 chanlink

全网首发“Java面试考点大全”,25+专题梳理:JVM+多线程+Spring全家桶+MySQL+Redis等

Geek_0c76c3

Java 数据库 程序员 架构 面试

翻遍GitHub,这份MySQL全面手册,受喜爱程度不输任何大厂笔记

Geek_0c76c3

Java MySQL 程序员 架构 面试

算数、赋值、比较、逻辑、三元运算符

共饮一杯无

Java 运算符 10月月更

前端线下面授培训机构该怎么选择?

小谷哥

OpenHarmony社区运营报告(2022年9月)

OpenHarmony开发者社区

OpenHarmony

Java数据类型转换

共饮一杯无

Java 类型转换 10月月更

上岸稳了!GitHub标星115k+的阿里内部Java学习教程限时开源

Geek_0c76c3

Java 数据库 程序员 架构 开发

如何在 SAP BTP 平台上重用另一个已经开发好的 service

Jerry Wang

云原生 SaaS 云平台 SAP 10月月更

web前端技术培训学习好点

小谷哥

MobPush iOS端常见问题

MobTech袤博科技

ios

抖音后端123面开挂,全靠这份啃了58天的「Java进阶核心知识集」

Geek_0c76c3

Java 数据库 程序员 架构 面试

技术分享预告|DocArray x Redis 比快更快的向量搜索

Jina AI

人工智能 开源 算法 向量检索 神经搜索

【LeetCode】仅执行一次字符串交换能否使两个字符串相等Java题解

Albert

LeetCode 10月月更

Qt | Qt的动画框架和类

YOLO.

qt 10月月更 C++

搜索中常见数据结构与算法探究(一)

京东科技开发者

数据结构 ES 哈希 数据结构算法 搜索算法

STM32L051测试 (二、开始添加需要的代码)

矜辰所致

stm32 STM32CubeMX 10月月更

初学大数据培训学习入门

小谷哥

如何用AR Engine环境Mesh能力实现虚实遮挡

HMS Core

AR

小程序运营怎么做?

源字节1号

软件开发 前端开发 后端开发 小程序开发

打破“双十定律”,华为云AI推动超级抗菌药Drug X研发加速

华为云开发者联盟

AI 华为云 药物研发 盘古大模型 企业号十月 PK 榜

大数据学习培训机构怎么去选择

小谷哥

Boson:超越Rake的另一选择?_Ruby_丁雪丰_InfoQ精选文章