The revolution of web UI
Java web application base on YUI Ext in practice
Cen Yin Lan,Guo Meng and He Xuan
ylencen@hp.com,mengg@hp.com,xuan.he@hp.com
GDCC MDI
Abstract
PCES 项目组为半导体代工领军厂商 TSMC 开发一套生产流程控制软件,为提高
客户在 Web UI 层的体验,该项目使用了 YUI Ext 的一套 JS 开源组件。在传统意义上,
为提高客户在 Web UI 层的体验,一般采用 Application、JWS、Applet 或者 ActiveX
等胖客户端实现方式。而 YUI Ext JS 提供了另外一种提高用户体验的方式---富客户
端,富客户端结合了 B/S 与 C/S 的各种优点:丰富的用户体验、高可伸缩性、平台独
立,以及非常易于部署和更新。
Background and Problem Statement
在 Web UI 层提高用户体验,有两件事情是必须解决:
标准的 Web 元素过于简单,仅仅提供了输入框、单选框、复选框、组合框
和按钮这五种控件,不能体现客户个性化的需求,没有 Grid、Dialog、Edit
ComboBox、ProgressBar 等高级控件可供选择;
传统的 B/S 结构中,采用同步的请求/响应模型,在请求发送给服务器之后,
必须等待服务器的响应返回后才能进行下一步的操作,使用户在操作上不
具备连贯性。而且服务器返回给客户端的内容,除了包含需要显示的商业
数据,而且还掺杂着布局、样式等一些额外的信息,增加了前端与后端交
互过程的复杂性。
Our solution
通过多种方案的比较,我们发现 YUI Ext JS 能够带给客户良好的体验(YUI Ext
JS 数据流控制 Figure 1)。
YUI Ext JS 非常类似于 Java Swing 的思想,在布局上提供了多种 layout 的方式,
并且提供了绝大多数 UI 层必须的控件:Grid、Menu、Tree、ProgressBar、StatusBar 和
Widnow 等。而且 YUI Ext JS 控件通过 CSS+DIV 的实现方式,做到了不以特定技术
相绑定,在任何一款主流浏览器中都能正常运行,解决了跨平台的问题。
传统方式的同步请求/响应模式已经不能够满足客户日趋多样的需求,AJAX 自
从 2005 年真正登场以来,迅速吸引住了大家的眼球,通过近几年的实践,已经证明
AJAX 是一种成熟稳定的技术。 YUI Ext JS 吸收了 AJAX 的精华,通过二次包装
AJAX API,使其异步访问模型更加实用,并且能够与其自身控件无缝集成在一起,
提供了一种全面的前后端数据访问方案。前后端传送的不再是文本格式的 HTML,
而采用自解释型的 JSON 对象,面向对象的精神向 Web 层又迈进了一大步。