BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Dojo 1.3和PlugD发布:采访Dylan Schiemann

| 作者 Dio Synodinos 关注 3 他的粉丝 ,译者 张凯峰 关注 1 他的粉丝 发布于 2009年4月21日. 估计阅读时间: 8 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

最近,Dojo 1.3正式发布,同时发布的还有PlugD项目,这个项目会将jQuery的优雅用法添加到Dojo工具包中。就最新发布的新版本、工具包的发展和TIBCO的General Interface选择加入Dojo基金会等问题,InfoQ采访了SitePen的CEO、Dojo的共创者Dylan Schiemann。 

InfoQ:Dylan,对你来说这次发布的亮点在哪?

最明显的特性就是开始正式支持IE8和Chrome了。微软在IE8做出了很多主要会影响到Dijit的变化,而Chrome并不和Safari完全一样。除此之外,显著的改善还有文档( http://docs.dojocampus.org/ )质量的提升,数以百计的稳定性和性能上的提高,以及可以提高开发者效率的API改进。我还对新的DataChart部件感到非常兴奋,它把创建依赖于Dojo数据存储的本地图表变得非常容易,包括实时的Comet来源。

 InfoQ:有报道称Dojo在通用DOM操作上的速度比别的工具包快两倍。对此你有什么要说的吗?

虽然Alex宣布TaskSpeed有一点早了,但至少我很高兴,因为经过了这几次新版本发布后,Dojo不再是一个速度慢而臃肿的工具包了,就像0.4版本之前那样。但在我心目中,对它是不是最快的仍然存有疑问,因为TaskSpeed和SlickSpeed也并不是完美的。

InfoQ:随着这次版本发布的还有PlugD插件,这个插件将我们熟悉的jQuery的用法添加到Dojo的功能中。你认为Dojo核心在将来也会朝着那个方向去发展吗?

绝对是这样,因为jQuery用来访问和操纵DOM的API已经被证明是相当受欢迎的。这项工作由Dojo项目的领导者Peter Higgins来主导的,最后因为一些缘故成为了一个单独的项目或者说插件。原因之一是为了演示将优秀的功能以插件的形式添加进Dojo是多么容易的事情。另外一个原因就是我们许诺我们的用户,Dojo核心和Dijit的特性要足够稳定,并且跟过去的.x版本不会不兼容。因此我们希望在把这个功能引入到Dojo核心之前先准备好。我期望是在Dojo1.4中看到更具体的内容。
InfoQ:Dojo 1.3现在拥有了一个新的选择器引擎Acme,但是它也可以透明地使用Sizzle引擎。你认为JavaScript框架间的组件分享会在将来成为很平常的事情吗?
Acme是在Sizzle宣布前就由Alex开始做了。在将来,我期望在某种程度上,Sizzle和Acme能最终成为一体以及相同的东西,除非它们在哲学上是互不兼容,或者我们的用户很担心这样的事情发生。jQuery的联合缔造者John Resig已经在向Dojo基金会贡献Sizzle了,以鼓励跨工具包协作和对Sizzle的使用,而且我相信我们会看到越来越多的跨工具包合作。在我的脑子里,DOM操作是另外一个候选,还有对于通用名称和CSS类名惯用词取得统一意见,这样就能在使用多个工具包时,在混合使用小部件的过程中,能很容易实现统一的主题。
InfoQ:Dojo自0.4版本开始获得越来越多的关注。从那时起,它就在多个方向上取得进展,那在接下来的几年你觉得Dojo会怎样发展呢?
我想我们的0.2版本才是真正的引爆点,并获得来自IBM、AOL、Sun及其他公司的关注。Dojo 0.4在2006年的OSCON大会上的确取得了显著的影响,但我们不得不完成一次重要的重写任务,以避免Dojo失去吸引力。之后的每一个版本发布都取得了比前一个更多的下载量,我们为人们使用Dojo的各种各样的方式所感动。最近的一个很有名的例子就是Mozilla的Bespin。
 
现在,人们通常会选择Dojo、jQuery、Ext、MooTools和YUI来构建基于Ajax的应用,特别是在构建一些大型或者高度复杂的应用领域,会选择Dojo。而在更多的传统web网站领域,Dojo的采用率距离jQuery和Prototype还比较远,而且可能相对YUI和MooTools也处于下风。
 
虽然你的只拥有一点Ajax功能的标准web网站应用并不是我们的目标客户,但最新的性能比较表明,Dojo同样可以提供强大的、功能丰富的选择。除了逐渐和传统web站点发生关联之外,我们也致力于将Dojo发展成可用于移动web应用、站点和部件。
 
最后,关于Dojo的特性,我们会继续听取我们的用户的意见,并致力于对他们来说最重要的功能。Dojo Grid在过去这一年获得了极大的关注和使用,而且会继续吸引人们的注意力来做到更好更加模块化,因为,如果你想把所有用户的功能需求都添加进来的话,表格会变的非常复杂。
InfoQ:在过去的几年,有一些项目逐渐加入到Dojo基金会中,比如Cometd、Persevere、DWR,以及最近的TIBCO的General Interface。你能给我们解释一下这个基金会主要是干什么的,以及它如何让这些项目和社区受益呢?
最一开始,这个基金是由我和Alex共同作为Dojo工具包的版权所有者而发起的,所以这不是Alex和Dylan版权所有。我们曾经考虑过把它放在像Apache这样的地方来允许申请资格,但我们还是想尽可能地减少流程,把重心放在创造伟大的代码上面,而不是像金钱或者传统的基金会功能上。
 
虽然Dojo基金会总是可以使用捐赠来支持更好的服务器端操作和减少年度经费,但强调代码贡献、每个项目预算上的自主以及每个项目领导者拥有对项目高度的分布式控制,是更能激发起兴趣的事情。我们对项目设定了很少的限制:拥有100点的开源项目(请参考Dojo基金会网站),并在某个许可证(目前是BSD、AFL和Apache)允许下提供你的代码。一旦某个项目被吸收进Dojo基金会,我们就会提供服务器端操作帮助和其他的好处。如果你有一个想要贡献给Dojo基金会的项目,请跟我联系获得更多细节信息。
你可以直接下载或者从Google CDL获得最新的Dojo代码,开始你的Dojo之旅。你也可以查看Dojo跟Spring Web Flow (Java)Dojango (Django/Python)DRails (Ruby/RoR)Tatami (Java/GWT)Zend (PHP)以及Dojomino (Domino Server)的集成。
 

 

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT