InfoQ

InfoQ

新闻

我的书签

登录注册 以永久保存书签。

该内容已经被标记书签!

标记书签错误,请重试!

Ruby工具更新:Yard 0.4添加实时文档服务器功能,Gem Bundler负责管理依赖

作者 Werner Schuster 译者 杨晨 发布于 2009年11月18日

领域
运维 & 基础架构,
语言 & 开发
主题
Ruby ,
动态语言 ,
配置管理 ,
工具 ,
语言 ,
部署 ,
企业架构 ,
编程 ,
敏捷 ,
RubyGems ,
Yard ,
云计算 ,
文档

YARD是一个Ruby文档生成器,还支持插件和在注释字符串里的Javadoc风格的元数据等特性

新版本的YARD 0.4.0做出了很多改进,例如对模版系统进行了改写。还有一个新特性,可以允许给某些代码添加元数据值,来限制该代码的文档生成。

最棒的新特性便是实时文档服务器

在每个方法的页面上,增加了由DISQUS实现的崭新的用户评论系统,允许用户针对某个方法贡献更多的信息。

http://yardoc.org/docs上已经有了一个该服务的公开实例,列表中的项目文档都可以使用该特性,例如Rails

Gem Bundler是一个全新的工具,旨在简化项目中对Gem依赖的管理以及对实时Gem require的控制。

Yehuda Katz,Gem Bundler的编写者之一,讲述了这个工具背后的故事

这个工具允许在一个独立于应用程序本身的空间中对所有的依赖进行配置。也就是说,它能够不运行程序就能够发现哪些Gems是应用程序所依赖的。[..]

一旦依赖问题得到解决,开发者就可以将程序运行崭新的系统上,而不需要使用RubyForge(或者Gemcutter)。对于编译型gem来说,这显得尤为重要(必须能够获取所需gem的列表以及在远程系统上编译)。[..]
除此以外,工具还具有为Ruby应用一个重发布的安装打包功能。新的gem发布版或者远程服务器应该不会对一个应用程序的安装包产生任何影响。

所有的依赖在一个Gemfile中列出来了,能够从默认或者定制的Gem源中获取。

所有的依赖能够被聚集到一个命名环境中。当应用程序需要在不同的情况下,例如“production(生产环境)”或者“testing(测试环境)”等等。运行的时候,环境问题就尤为重要。Gem Bundler能够找到Gem,并且在默认环境下使用Bundler.require_env将其包含进来,或者直接在环境名称中指定名字,例如Bundler.require_env(:testing)

更多信息可以在EngineYard博客的Gem Bundler介绍或者Yehuda的Gem Bundler简介中找到更多细节,还可以了解一下Gem Bundler是如何和Rails绑定在一起的。

查看英文原文:Ruby Tools: Yard 0.4 Adds Live Doc Server, Gem Bundler Handles Dependencies

译者 杨晨 对数据库和搜索引擎有深入了解,尤其擅长经典计算机科学理论,对历史学兴趣浓厚。