2005 年 12 月 5 日
基于 Mozilla 的扩展开发 : 配置项目环境
第四章 配置项目环境
通过上一章我们已经对扩展的结构和关键的 Chrome 有所了解,在此基础之上,本章将讲解扩展项目的配置方法。许多的扩展开发者可能都有过这样的经历:XUL 元素掌握得差不多了,可是想做一个小项目的时候却不知如何入手。作者希望通过本章节,你能了解到如何合理地配置扩展项目的开发环境。
Mozilla 平台下的项目配置和其它平台下的项目配置有些不同,其下的项目配置需要一个“螺旋式”渐进的过程。首先,我们需要先建立一个框架式扩展;然后,将其以安装方式注册到 Mozilla 下,同时对此扩展涉及到的 chrome 映射做修改;最后,我们才能真正地对项目进行开发。如果你在开发过程又中增加或修改了有关 chrome 注册的信息,你还要重复以上的过程,但那时的扩展已经不能再称为框架式扩展了,这种配置方法非常像软件开发中的“螺旋式开发模型”。由于,Firefox 的新版本与老版本在 chrome 注册方式上不同,所以相应的项目配置方法也会不相同。
基于 Mozilla 的扩展开发 : 扩展的结构及 Chrome 注册
第三章 扩展的结构及 Chrome 注册
上一章讲解了如何准备开发平台,但仅有开发平台还是不够的。本章就扩展程序的结构和 Chrome 注册机制,予以比较详细的讲解,只有当你对这部分的内容清楚以后,才能正确的对扩展项目进行配置。如果你对这方面已经非常清楚了,你可以跳过下面的内容。
2005 年 12 月 2 日
基于 Mozilla 的扩展开发 : 开发平台的准备
第二章 开发平台的准备
“工欲君欲善其事,必先利其器”。Firefox 就是我们的开发环境,因为所做的开发都是基于 Firefox 的。那么首先,我们要配置好所在的开发环境。合理而有效地配置好整体的开发环境和指定的项目环境,可以令你的开发快速而高效。本章节将讲解如何配置整体的开发环境,后面的章节还将对指定项目的环境配置给予讲解。
2005 年 11 月 11 日
基于 Mozilla 的扩展开发 : 技术介绍
第一章 技术介绍
扩展开发(Extension development)是由于 Mozilla 技术的实现而被引入的。那段浏览器大战的是是非非,我不想做过多的介绍。Netscape 浏览器源代码在被送到开源组织之后,非盈利性的“Mozilla基金会(Mozilla Foundation)”成立了。也正是在重写了 Netscape 的源代码之后,才有的 Mozilla 浏览器,而所有的这些技术也正是基于这个“脱胎换骨”的 Mozilla Suit 而来的。直到近几年,Mozilla 基金会为了使 Mozilla 浏览器更加精简高效,它的开发者们决定将浏览器和邮件客户端程序独立出来,Mozilla Firefox 和 Mozilla Thunderbird 等就此产生。
(注:以下除非特殊声明,对基于 Mozilla 内核的应用程序一律用 Mozilla 来称呼;对 Firefox 或 Thunderbird 等程序只做特殊称呼,又由于它们也是基于 Mozilla 内核的应用程序,所以它们也可用 Mozilla 来称呼。)
扩展的开发也多是基于以上提到的几个应用程序的,扩展程序的目的是为了增强浏览器本身的功能。因为 Mozilla 本身只支持一些浏览器所具有的普遍的功能,显然不能满足一些用户的特殊需求。但由于 Mozilla 本身的框架非常好,它所提供的资源已经远远超出了一个浏览器的范畴,更多的情况下倒像是一个“平台”。因为它提供了大量的开发接口,高度的模块化和可扩展性。所以,这就为我们在其下进行各种开发提供了很强的基础。下面对 Mozilla 所支持的各种技术做一些简单的介绍。
基于 Mozilla 的扩展开发 : 前言
前言
我在今年才刚开始接触 Firefox 和“扩展(Extension)”这些概念,许多的内容也是在学习中探索。我感觉到,由于这些技术在国内很少有系统的介绍,引入的书籍性翻译资料几乎为 零,只有在国内几个知名程序员的 Blog 上有些介绍,其余寥寥无几。苦于没有现成的中文资料可供参考,我不得不在英文很差的情况下,翻看了部分国外的资料,并且通过读源代码的方式来增加自己对扩展开发的理解。
出于开源开发的思想,我想把自己已有的开发经验做些总结,并在未来加入自己新的理解,维护好这篇文档。希望这篇文档能对你 Mozilla 下的开发有所帮助,我将尽我之力将复杂的技术阐述清楚。
在此,我要特别感谢我所在的亿邮公司和领导,没有他们的支持,我不可能利用工作时间对已知的技术做如此系统的整理;我还要感谢我的同事,没有他们的“锱珠必较”,我也不可能将那些复杂的技术描述得比较通俗易懂。同时,我还也要感谢你的阅读,如果你能对此文档的不足之处有所补充,或对错误提出指正,此文档将会被更好的维护,谢谢!
基于 Mozilla 的扩展开发 : 目录
我把《基于 Mozilla 的扩展开发》做成了一个专门的 Page 页,所以再在此处列出目录显得有些罗嗦,您可以到“基于 Mozilla 的扩展开发”中查看文档的目录索引,也可以直接点击 Pages 栏中的“基于 Mozilla 的扩展开发”,它都将把您带到相同的页面。
由于这篇文档的维护会很耗时力,所以再此希望的你参与,或提出好的建议。你所做的一切,肯定会对开源事业有所帮助,谢谢!