What really it is, not what it is
看了 infinte 的这篇文章:再见,Button;你好,Command, 和我这半年的一些想法很相近,本质是对 UI Controls 的再次抽象分类。
传统的 UI 控件分类,体现的是 what is looks like, 比如 Menu, Button, Tabs, Toolbar, Dialog, Grid, Tree 等等。
近期新近的一些 UI 类库比如 jQuery EasyUI, 开始逐步抽象出 Draggable, Droppable, Resizable 等 Base 功能点,这些形容词已经逐步开始从 what to do, not what it is 层面开始抽象。虽然 EasyUI 最后体现出来的依旧是 Menu, Dialog, Tree 等传统 UI 控件,但抽象层次和代码组织等已经逐步演化。
前不久在 InfoQ 发过一篇文章:构建 UI 组件的新思路, 介绍了 KISSY 类库中,通过 Switchable 抽象,实现 Tabs, Slide, Album 等 UI 控件的思路,抽象的出发点是 what really it is, not what it is.
结合 infinte 的想法,画了一个还比较混乱的图:
或许 UI 3.0 的时代真的来临了!
比如 Autocomplete(自动补全组件)或 Suggest(搜索提示组件),可以这样实现:
Suggest = Widget.combine(DataProvider, Overlay, Selectable);
在现实生活中,我们需要实现一个复杂实体时,经常用到的办法是将简单的实体组合起来。比如法拉利,是一堆汽车零件的组合。不同的法拉利,是选用的零件或组合方法有差异。类、继承等 OOP 概念,真的不是必须的。去掉后,世界照样清晰。
抽象、思考,思考、再抽象,多想想 what really it is, and what to do, not what it is. 我相信,未来是 UI 3.0 的世界!
infinte 的文章让我很激动,上面的想法还很不成熟,UI 3.0 是我杜撰的(当然,希望以后会说是我首创的,哈哈)。大家随意看看,极其欢迎讨论,提出你的想法与建议。
建议继续学习:
- 构建前端 DSL (阅读:2718)
- 用 CSS3 Transitions 实现动画 (阅读:2374)
- 行进中的前端类库:KISSY (阅读:2232)
- KISSY 近期更新 & 设计思路讨论 (阅读:2187)
- 将你的 KISSY 程序移植到服务器端 (阅读:2100)
扫一扫订阅我的微信号:IT技术博客大学习
- 作者:lifesinger 来源: 岁月如歌
- 标签: dess KISSY really ui3
- 发布时间:2010-07-14 09:42:04
- [70] IOS安全–浅谈关于IOS加固的几种方法
- [69] Twitter/微博客的学习摘要
- [64] 如何拿下简短的域名
- [63] android 开发入门
- [62] Go Reflect 性能
- [61] find命令的一点注意事项
- [59] 流程管理与用户研究
- [58] 图书馆的世界纪录
- [57] 读书笔记-壹百度:百度十年千倍的29条法则
- [57] Oracle MTS模式下 进程地址与会话信