Dojo 0.9 发布最终版并有巨大的性能提升

阅读数:92 2007 年 9 月 17 日

话题:JavaWeb框架语言 & 开发

Dojo 0.9 最终版已经发布,发布时间距相应 Beta 版发布不到七周。它有如下重要特性:

Dijit
  • 所有 UI 部件使用统一外观
  • 所有 Dijit 部件都具备的 a11y(可访问性)和 i18n(国际化)特性
  • CSS 驱动的成熟主题系统,带有多个高质量主题
  • 大幅度的系统级性能提升
  • 数据绑定 UI 部件
  • 为编写轻量级 UI 部件所准备的声明
  • 一个允许任意类实例而不仅限于 UI 组件的全新页面解析器
Core
  • 减少了的 API 范围(更容易记忆和使用)
  • dojo.query() 方法始终可用,返回真正的数组
  • 重新编写的高性能拖放(Drag & Drop,DnD)系统
  • 组件的基础(dojo.js)仅有 25K 大小(经由 gzip 压缩后的大小)
  • dojo.data 的 API 已定稿
  • 新的构建系统
  • 可同时用于 CLI 和浏览器的新测试套件
  • dojo.behavior 基于 dojo.query, 并已被标识为稳定版本
  • Dojo Base 中超好的支持彩色动画的 API(始终可用)
  • 所有人们从 Dojo 时代开始就盼望的特性(RPC、JSON-P、JSON、i18n、格式化工具)
DojoX
  • 较早的实验特性得到了高质量的实现:gfx(可移植性 2D 画图)、数据通路、离线、存储、cometd 等等
  • dojox.gfx 已经包含了对 Sliverlight 的支持
  • 还有更多的特性和改进,这里暂不一一赘述

性能的提升看来非常显著

Dijit 应用尺寸只有 0.4 版的一半大,页面装载时间更快:UI 部件代码中已没有附加 JavaScript

Daniel Ruspini 在博客上写出了他上月较早前在 Ajax 体验大会中对 0.9 版的印象

[……] 尽管我以前听到许多关于 0.9 的事情,但这是我第一次看到这些变化和关于实际尺寸、性能的数字。0.9 版的想法是让由于以下原因而变得臃肿不堪的代码量减少:支持尽可能多类型的浏览器、允许贡献者添加部件到部件库中、支持向后兼容的代码。后来他们发现,有 30% 之多的代码是缩减掉的。UI 部件也写得风格迥异,并在使用中也不全然一致,还有一些 UI 部件是大部分开发者用不着的。有一些很流行的组件则尝试履盖更多可能的用例,这导致它们变得很慢(如按钮)[……]

Dojo 0.9 和先前任意一个 Dojo 发布版本都不兼容。不过,希望从 0.4 迁移到 0.9 的用户,可以访问对应的移植指南

查看英文原文:Dojo 0.9 Goes Final with Significant Performance Improvements