HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

GWT-Ext 2.0 发布: Sanjiv Jivan 访谈

  • 2008-02-26
  • 本文字数:2209 字

    阅读完需:约 7 分钟

2 月 6 日 GWT-Ext 2.0 正式发布。GWT-Ext 是一个为 Google Web Toolkit(GWT)开发的 widget 库,它提供很多控件,比如:带有拖放功能的树(trees with drag and drop)、可分页 / 可排序表格(page-able/sortable grids)、校验表单(validating forms)和标签面板(tab panels)等。GWT-Ext 中可使用的控件来自于 ExtJS Javascript widget 库。GWT-Ext 2.0 将 GWT 1.4 和最近发布的 ExtJS 2.0 相捆绑起来。(若想获得更多关于 ExtJS 2.0 的信息,可以查看 InfoQ 对 ExtJS 创建者 Jack Slocum 的访谈

这些是 GWT-Ext 2.0 与之前版本相比所包含的一些改变:

  • 性能的改进
  • 统一的组件模型
  • 新布局管理 API
  • Bean-friendly API
  • 一些新的 widget

完整的 2.0 发布文档可以从 GWT-Ext 的网站获得。InfoQ.com 有幸和 Sanjiv Jivan —— GWT-Ext 背后的创建者及主要开发者做了一次短暂的对话,以此获知他对 2.0 版本的看法:

请用您自己的话(在较高层面)来简单的概括一下 2.0 中的改变。

首先,我想恭喜 Jack 和 Ext 团队,恭喜他们在 Ext 2.0 中所做的出色的工作。GWT 2.0 中很多改进其实都直接得益于 Ext 2.0 中的强化和构架的改进。这个版本中最大的构架方面的进步是一个统一的组件模型和改进的布局管理。现在所有的 widgets 都遵循一个一致的体系,都是同一个管理创建、展现和销毁生命周期操作的基础组件的子类。该版本拥有可以将容器(containers)的各种职能划分开来的构架,容器仅获知它的子组件,而容器中组件的布局管理则交由所指派的 LayoutManager 来管理。创建复杂的布局现在只是小菜一碟。

GWT-Ext 2.0 还拥有一个 bean friendly API,这使得它更易于使用,并且有助于与像 GWT Designer 这样的 UI builder 相集成。它还有很多很酷的新特性,比如对 Grid 中分组(grouping)的支持、Accordion、进度条(ProgressBar)、支持 Grid 和 Tree 之间的拖放(Drag & Drop)等等。该发布中另一个亮点是一个新改进的 Showcase 示范( http://www.gwt-ext.com/demo ),这个示范中包含了很多例证性的例子及相关源代码,可单独运行每一个样例。我崇尚通过例子来学习,我希望在这个 Showcase 示范中投入的努力能够对用户有很大的帮助。

另一个值得一提的是 GWT-Ext 2.0 的许可问题。据我所知,根据 FSF 的规定,GWT 背景下的 LGPL 许可实际上被转换成了 GPL,除非类库作者声明不要做这样的转换。我在 GWT-Ext 的许可页面( http://gwt-ext.com/license/ )上添加了有关说明,这样大部分用户可以在商业项目中自由使用 GWT-Ext,免遭违反许可的厄运。

请您解释一下在 2.0 版本中,是什么方法使得 GWT-Ext 的性能得到了改善。开发者能够期望得到怎样不同的性能呢?

该版本中性能得到巨大的提高,主要得益于 Ext 2.0 中性能的提高。你可以从他们的网站了解他们究竟做了怎样的修改,但我可以讲一下 GWT-Ext 相关的一些巨大变化。 - 所有的组件/widgets 现在可以支持延迟渲染(lazy rendering),这意味着他们可以在没有任何开销的情况下被初始化和管理,它们的渲染被延迟到其必须要被放到 DOM 时才进行。仅仅这个改变就换来了性能大大改善的结果,尤其是对于大应用程序来说。

  • 所有组件都遵循一个标准生命周期,从创建到销毁都由允许适当的内存管理的框架来管理。表单和 Grids(表格)尤其得到很大的改进,用户可以期望这些 widgets 能有更好的性能表现。
  • 使用 GWT-Ext 2.0,每个 widget 不再需要各自的“config”类。用户可以简单地在 Component 本身调用 Javabean setters 来设置一个 Component 属性。这不但使得 API 来的更加清晰,而且还帮助减少了很多行代码。
  • 最后,眼见为实。一些用户在将他们的 GWT-Ext 升级到 2.0 之后发表说,他们的应用程序响应更加流畅、性能更加出色了。你也可以通过运行 GWT-Ext 2.0 的 Showcase 示范中的例子来感受一下改进了的性能。

GWT-Ext 0.9.3 的用户升级到 GWT-Ext 2.0 会遇到什么障碍吗?

布局管理 API 有所改变,但这些改变还是受到了大部分用户的欢迎,因为新的 API 更加容易上手,并且可以帮助你更快更简单地实现繁复的布局。为 Component 做配置时,不再需要单独的 config 类——用户只需要在 Component 本身调用 Javabean setters。在升级中实现这个改变几乎只是几个钟头的苦力活而已,实在不是什么需要深入的大工程。再次地,用户很欢迎这个改变。实际上,使用 Javabean 而非分隔的 config 类是受到了 GWT-Ext 0.9 的用户反馈的影响。Java 编译器也是你的朋友,任何不能处理的不兼容问题,编译器都有相应的报告。我们欢迎用户在 GWT-Ext 论坛发表任何关于升级的问题。但不同用户升级所花销的时间不同,曾有一个用户报告说他升级他 1 万行代码的程序到 GWT-Ext 2.0 的时候花了两天。用户可以期待 API 将更加稳定。

2.0 发布以后,GWT-Ext 的开发会向何处发展呢?下一步会带来什么呢?

GWT 1.5 作了一些改变,改进了跨越 Java-Javascript 边界的性能,这也会给 GWT-Ext 带来了巨大的性能改进。我正在进行必要的(内部)改变以利用 GWT 1.5 的这个优点做一些优化。 另外,我正在计划添加一些 wiki 文档、FAQ 以及指南来帮助用户更快的提高开发效率。除了正在进行的优化以外,我还计划将注意力放在用户上,帮助他们将开发成果推向产品。最后要说的是,这是一个成功类库的真正基准点。

GWT-Ext 拥有 LGPL 3.0 许可。社区论坛、Wiki 文档、下载链接、以及更多许可信息可以在 GWT-Ext 主页找到。查看原文: GWT-Ext 2.0 Released: An Interview with Sanjiv Jivan

2008-02-26 21:272638
用户头像

发布了 71 篇内容, 共 20.2 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

为什么C4D能成为电商设计的王者?

Finovy Cloud

C4D 电商设计

Redis 7.0 源码调试环境搭建与阅读技巧

码哥字节

redis redis 底层原理

国内有哪些做的比较好的云教室厂商?

青椒云云电脑

云教室 云教室厂商 云教室解决方案

SQLSmith: Databend 如何利用随机化测试检测 Bug

Databend

3DCAT+东风日产:共建线上个性化订车实时云渲染方案

3DCAT实时渲染

汽车虚拟仿真 汽车3D可视化

企业如何安全跨国传输30T文件数据

镭速

跨国数据传输 跨境数据传输

LLM 大语言模型应用的分段策略

Tiger Wang

LLM 大语言模型 langchain

免费活动-11月4日敏捷武林上海站 | Scrum.org CEO 亲临现场

顿顿顿

Scrum 敏捷开发 敏捷项目管理 敏捷活动 scrum活动

深度解读MediaBox SDKs如何实现技术架构升级

阿里云视频云

云计算 视频云

教育培训行业APP软件定制开发

V\TG【ch3nguang】

​  iOS自动混淆测试处理笔记

雪奈椰子

推送内容有误怎么办?MobPush撤回/取消推送为您排忧解难

MobTech袤博科技

智能推送

跨语言高性能 RPC 框架 Focus 架构解析

dinstone

RPC 高性能 跨语言 focus

StarRocks 荣获 InfoWorld 2023 年最佳开源软件

StarRocks

Redis管道技术瞬间提升系统性能,速度翻倍!

高端章鱼哥

redis 管道技术

云教室如何部署?云教室使用教程

青椒云云电脑

云教室 云教室厂商

Kafka 在分布式系统中的 7 大应用场景

越长大越悲伤

Java kafka

产研团队必看!3款在线白板工具助你轻松改善工作!

彭宏豪95

产品经理 科技 产品研发 在线白板 效率软件

app游戏定制开发【 小游戏定制开发】

V\TG【ch3nguang】

Dapp开发,让你掌握区块链技术-dapp开发团队

V\TG【ch3nguang】

一招教会跨国企业如何解决跨境数据传输的丢包和延迟问题

镭速

跨境数据传输

APP移动出海必备神器,MobPush提供海外消息智能推送一站式解决方案

MobTech袤博科技

智能推送

如何选择向量数据库|Weaviate Cloud v.s. Zilliz Cloud

Zilliz

非结构化数据 Zilliz 向量数据库 zillizcloud

区块链DAPP开发技术方案,开启你的区块链时代

V\TG【ch3nguang】

Linux ls命令:查看目录下文件

梦笔生花

腾讯Ckafka队列使用测评

查拉图斯特拉说

kafka 消息中间件

博睿数据亮相GOPS全球运维大会上海站!

博睿数据

Kubernetes跨StorageClass迁移,切换Rainbond默认SC

北京好雨科技有限公司

云原生 #Kubernetes# 企业号10月PK榜

PostgreSQL基于Patroni方案的高可用启动流程分析

谐云

第13期 | GPTSecurity周报

云起无垠

数智化推送助力用户精准分层,MobPush是如何实现用户价值变现的

MobTech袤博科技

智能推送

GWT-Ext 2.0 发布: Sanjiv Jivan访谈_Java_R.J. Lorimer_InfoQ精选文章