Hobo 是一个Ruby on Rails扩展的工具包,这些扩展可大大提高Rails开发的效率。这个工具包近期将要发布1.0 版。InfoQ就这个里程碑式的版本采访了项目创始人Tom Locke:
我们现在已经停止添加新特性,将精力转向文档完善和程序稳定性上面。这将是一个长期的过程,因为只有当我们 觉得一切都已经OK的时候才会发布正式版。所有的人都会觉得这个工具包非常有用而且易于上手。我们也郑重承诺,如果没有事先发出警告,我们不会对代码作出 任何重要的修改。
开发者可以将Hobo看做一个Rails的模型、视图和控制器的协作扩展工具集。例如,Hobo支持模型中心化许可 。即,如果一个模型声明某个用户可以做出某个动作,那么控制器只会允许用户做授权的动作,视图也不会展示用户没有权限编辑的表单字段。一个Hobo模型仿佛具有生命 一样;在控制器层和视图层的用户接口中,相应的动作会自动创建。
Locke也提醒说,开发者只需要简单地将Hobo看做一个脚手架型的架构(Scaffold framework):
脚手架型架构可以快速满足简单粗略的需求。例如,一时的应急处理,或者简单搭建一个普通用户无法访问的管理 员站点。要知道,Hobo能够应用于你的整个服务中。你可以使用默认的UI,这样一来,这个站点基本上就已经几乎满足你的需求了,你需要做的就是调整一些 细节满足你个人的用户体验。
我们将尽可能地确保你能够接触到底层 并且可以修改任何你在官方Rails中可以修改的内容。
作为Hobo的一个基于标签的模板语言,DRYML 体现出的重用和扩展性的理念,可以帮助开发者简单快捷地创建属于自己的标签。DRYML同时也允许在每次标签使用的时候,进行“上下文高于一致性”(Context Over Consistency)的微调。
它的主要强项在于可以将代码段打包以期复用,而不需要牺牲灵活性。就拿导航链接(breadcrumb link)来说,你不用再写额外的HTML代码,就可以最新 新闻Widget和博客首页中的导航链接移除掉。
不仅下载次数接近万次 ,而且Hobo邮件列表中的用户也即将突破500人。在Hobo的官方网站 上也可以下载到Rapid Rails with Hobo 和Hobo at Work 这两本书的pdf版本。
Hobo是一个很大的项目。开发者有许多东西需要学习,但是如果只是需要让其能够正常发挥作用,那么你只需要学习如何设置、运行。你的应用程序自定义需求越多,你需要学习的东西也就越多。
Hobo是由Barquin International资助的:
从Barquin的Owen Dall约见我们,决定启动这个项目开始,已经过去了两年。坦白地说,我们并不是在这里讨论风险投资。Barquin支持着我,接着是支持Bryan Larsen,因此我们能够毫无压力地编写代码和交付房租。在Barquin的帮助下,项目进展很快。最近,Barquin又资助了两本Hobo的书籍编 辑出版工作。我在此不厌其烦地说,我编写的文档和出版物都算不了什么,这些书能够问世完全应该归功于Barquin的Owen和Jeff。
Hobo的未来会发生什么呢?
其实,我觉得这取决于社区。社区中有成千上万的想法,但是哪些能够完成取决于开发者的需求和努力。我们已经在国际化支持上做出了非常重大的贡献,但是老实说,这不是我的目标。当然,我们也非常高兴这个项目能够取得当前的成就。