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日

發佈了32 篇原創文章 · 獲贊 83 · 訪問量 29萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章