JS 基金会发布 Dojo 2.0 ,带来大量改进

来源: 投稿
作者: 李玉珏
2018-05-11 09:23:00

2018年5月2日,Dojo团队发布了Dojo第二版(Dojo 2)。Dojo是一种为JavaScript开发人员扩展开发过程提供帮助的工具箱。Dojo 2聚焦于开发人员对构建现代企业应用的需求,是在2007年发布Dojo 1的十多年后对Dojo的一次完全重写。Dojo 2使用TypeScript构建,采用了基于组件的架构和虚拟DOM。Dojo 2在工具上做了大幅的改进,其中包括一种新的CLI、集成的测试,以及一些连接Dojo与常见标准及工具的功能。

Dojo 2关注于对现代JavaScript巨大改进的集成,并提供给开发人员使用。Dojo的联合创始人和项目牵头者Dylan Schiemann给出了如下的介绍:

从很多方面看,Dojo 1必须要先行一步。而当前的问题,更多的在于如何将各种功能以一致的方式整合在一起。如何创建具有React那样的响应能力、但是能够更好地扩展到更大规模组件上的功能?如何能自然而然地而非磕磕绊绊地实现国际化(i18n)。

我们正力图打破各种框架之间的隔阂。我们一直在推进,已使Web组件系统深受Dojo 1 Widget的影响。所以这里要指出的是,我们需要一个基于响应式组件的系统,但并不希望将开发人员锁定到Dojo中。因此我们实现了一套工具,用于导入或导出Web组件,以供在Dojo中使用或是在Dojo之外使用。

工具是Dojo 2的一个主要关注点。Dojo 2提供了一种全新的CLI、集成的测试,以及一系列实现Dojo与常用标准和工具连接的功能。Dojo 2的Beta测试人员Rene Rubalcava撰写了一篇博客文章,介绍了该即将推出的新版本。文中特别指出,非常容易实现将Dojo Widget导出为可移植、符合标准的Web组件:“在REPO中运行命令dojo build --element=src/createTwitterShareElement.ts,之后该组件就可以在Web页面中使用了”。当被问及在Beta测试中接触到的所有特性中他最喜欢哪个时,Rubalcalva进一步做了如下的解释:

Widget导出特性可以作为人们即刻开始使用Dojo 2的一个绝佳入口。这是一个很棒的特性!我之前从未在框架中看到这样的特性。在我看来,用户将会从该特性中受益匪浅。它使得开发人员可完全聚焦于组件的创建。CLI非常好用。

CLI提供了多种好特性,人们可以从中发现大量可用之处。其中之一,就是使用CLI为应用赋予主题。开发人员可以引入Dojo提供的一些默认的Widget,而CLI则提供了将主题应用到Widget和应用的工具。

Dojo中内建了一个基于CSS Modules的主题系统。所有内建Widget可主题化(Themeable)。根据Dojo的主题文档,可直接使用CSS Modules的组合(composition)功能实现主题的扩展。想要着手创建主题的开发人员,可遵循文档中给定的一个教程

Dojo的前期版本因文档质量而饱受批评。因此在Dojo 2中,文档是核心团队的一个主要关注点。据Schiemann介绍:

只有通过了很好的测试和文档化,代码才能加入到主分支(Master)中。我们全面掌握人们学习并尝试以此方式记录文档的情况。我们在Dojo网站上推出了一个很好的系列教程,其中涵盖了人们想要做的头50到100件事情。

感兴趣的开发人员,可以从Dojo教程入手,就一些常见的问题及其解决方案查阅指南(Cookbook),或是直接深入翻阅文档

对于熟悉React的开发人员,可能会发现Dojo 2相对比较易于上手。当被问及如何比较Dojo与其它一些现代JavaScript框架时,Schiemann表示,Dojo与React最为相似,但React遵循的原则是允许开发人员灵活选择所使用技术栈的各个部分,而Dojo 2对前端应用的各个部分都具有自身倾向性的默认设置。Rubalcava对此给出了进一步的解释:

React是一个很好的软件库,非常棒的UI框架,并且十分灵活。但是对于团队工作,同样的灵活性会使新加入的团队成员难以融入。而使用Dojo 2时,它支持JSX,团队成员将具有十分类似的虚拟DOM体验。当在团队环境中合作开发时,对所有内容的封装将使新团队成员很容易上手。

Dojo 2是受JS基金会支持的一个开源项目。JS基金会还为jQuery、webpack和lodash等关键JavaScript项目提供法律上的和管理上的支持。

来源:InfoQ

展开阅读全文
点击加入讨论🔥(9) 发布并加入讨论🔥
本篇精彩评论
还以为这货没有着落了呢,这又有消息了。
2018-05-11 11:12
3
举报
给重构人员点个赞👍
2018-05-11 12:48
1
举报
typescript是亮点啊
2018-05-11 12:00
1
举报
9 评论
9 收藏
分享
返回顶部
顶部