firefox附加组件开发者指南——译序

本系列文章很适合作为学习Firefox附加组件开发的参考。其中说明了Firefox扩展开发所需要使用到的技术,并对这些技术进行了简明的介绍。翻译完本系列文章,特别是第五章之后,我对Firefox附加组件开发的理解又深入了一步。
最初在MDN上看到这一系列的文章是为了想要搞清楚如何使用XPCOM接口而搜索到的,时间大概是2011年11月份。当时只对第四章比较感兴趣,看了一遍,但是我这人英语水平还不到位,一般看完一遍之后还是不明所以,因此我遇到重要的文档在时间充裕的情况下都是将其部分的或者全部的翻译成汉语。翻译之后加深了理解,也方便之后查阅。当时就花了一些时间把第四章翻译了过来。看到本系列文章的目录,我就留了一个心眼,觉得本系列文章确实不错,如果有时间就准备将其完整的翻译成汉语。
2012年我是1月30号离开老家的,来这边刚开始工作不是特别忙,而且工作上已经理得比较有头绪了,于是在2月份基本上很多晚上和周末都在对本系列文章进行翻译。当然效率不是特别高。终于在3月2日晚上完成了整个文档的翻译。昨天整理了一个我自己用的下载页面的Firefox扩展(是因为翻译这篇文档之后觉得可以按照本文档的方式对其做一些改进),今天起来将这篇文档的翻译稿整理一遍并做了这篇译者序。
我是去年九月份开始接触Firefox开发的,首先就是学习其扩展的开发,当时对XUL、javascript、CSS等都不了解,对HTML也是一知半解。在学习扩展开发的时候也是在网上到处寻找资料,中文资料也挺多的,很快就写出了一个hello world扩展。后来就开始花时间学习XUL,学习XUL的过程中我是按照MDN上的一篇XUL教程进行学习的,我也进行了翻译,但是翻译了大部分之后发现有人已经翻译了。后来又学习了javascript,由于javascript 是一门编程语言,不依赖于Firefox,所以我选择的是中文教程,很快就学会了一些皮毛,可以用了。在之后由于工作方向的问题,我就去研究Firefox的源代码了,但是花费了两三个月的时间之后我依然没有从源代码中找到什么突破口。后来在网上各种寻觅,终于寻找到一位高手(名为zhuoqiang,chmfox扩展的作者,非常感谢),并进行了请教,无私的为我提供了宝贵的意见,使得我的工作有了起色。否则也没有时间来翻译这篇文档了。
翻译这篇文档的过程中,我也对Firefox附加组件的开发有了更进一步的认识,比如说,以前看到overlay就不能明确的说出它到底表示什么意思,虽然借助翻译工具可以查知其汉语意思,但是总感觉怪怪的。在翻译本文档的过程中我才真正理解到其含义,overlay的本意就是叠加、覆盖的意思,在chrome.manifest文件中用overlay指令来指明将一个XUL叠加到另一个XUL上。比如常用的就是将我们写的XUL叠加到browser.xul上。而XUL文件中的overlay标签更加清楚的指明了该文档是用于叠加到其他xul文档的而不是单独的窗口或在单独的对话框。理解到了这一点,就知道overlay的意思就是叠加附加的意思,之前就算是强行将这个词翻译为叠加,翻译后总感觉不妥。更不用说给别人解释清楚了。当然,在翻译的过程中我收获的还不止这些,比如我学会了开发扩展的过程中只需要在profile文件夹下面的extensions目录下建立一个与扩展名相同的文件,将其内容写为对应这个扩展的路径就可以了,而不需要将工作文件夹放到profile中去;比如知道了在自己的扩展js代码中写成一个个的对象的好处;另外我还根据本文档的一些线索,结合MDN学会了如何创建preference面板。
翻译其实是一个很缓慢的工作,但是正是因为其慢,所以对其中所阐述的问题才理解得深,同时翻译之后的文档公布出来可以方便其他没有看过原文的人快速了解文章的主要问题,并在感兴趣的时候查看原文。这样也可以大大的节约后来者的时间,减少初学者走的弯路。因此我也倡议所有有时间、有能力的开发者多翻译一些有用的文档,以方便其他人学习同时方便自己以后查阅。
由于本人水平有限,翻译过程中错误在所难免,希望发现错误的人能够与我交流,帮助我改进;同时也可能有一些地方没有将原文的意思表达清楚,有疑惑的地方欢迎与我联系沟通或者参考原文。


2012年3月4日

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值