俺开始是被firefox的扩展所吸引,加上工作上也需要类似地扩展能力,于是从去年底开始看一些mozilla/xul方面的资料,慢慢地发现了xul, xbl, xpcom的魅力,于是打算系统地学习一下。
- 春节前后把Creating Applications With Mozilla这本书草草看了一遍,有了大致的了解;
- 通过limodou的学习笔记将XUL Tutorial看了一遍(英文原文在MDC和XUL Planet上都有),好在有他的帖子啊,否则RDF这个东西看英文还真头大;
- Rapid Application Development with Mozilla 是第二本关于Mozilla开发的书,曾在amazon上获得五颗星的评价(可惜作者过世了,再也没有第二版)。我看了几章,感觉细节讲得比较多,而且很多地方会用类比的方式来讲解为什么要这样设计,不是太适合初学,尤其是英文不太好的朋友很难抓住重点。这本书的PDF版本可以从这里下载到。
先概括地介绍一下mozilla/xul的扩展能力:
- 通过overlay技术可以对一个已有界面进行重新定义,这也使得对于一个界面可以先写一个框架,再用overlay来逐步细化;
- 每个窗口的界面元素也有一个DOM结构,完全可以通过脚本来操纵它,修改其属性,甚至动态地创建和删除控件;
- 可以用XBL来绑定一组XUL元素组成,对行为和风格也可以包装,更方便复用;
- 可以自己来写xpcom组件(components)来扩展一些功能,尤其是与操作系统或者外部程序交互的地方,这些控件注册后就可以在脚本中使用;甚至可以用javascript来写组件
没有评论:
发表评论