午夜夢迴,只有這位好朋友(不是阿飄)肯靜靜陪著我,他不是別人,而是天天伴著我遨遊世界的 Firefox。
早在幾年前我就已經放棄那墮落已久的 IE,轉入當時喧騰一時的 Firefox 1.0,多樣性佈景主題、豐富的擴充套件(Extension)讓 Firefox 的功能更加彈性化,而不會只有某些呆呆的功能。

11月19號 Mozilla 終於推出耗時27個月開發的 Firefox 3.0 beta 1(以下簡稱3.0b1)版本(告非,終於脫離無限的 Alpha 迴圈了),雖然僅僅是測試版,但是卻讓小弟對正式版有著無比的期待,原因請往下慢慢看吧!有興趣的網友們可以自行下載回去玩,詳細修正列表請看官方的 Release Notes 或者翻譯文


剛開始用 3.0b1 的時候,只有一個感覺:速度超快!感覺它變輕巧了許多,值得嘉許的是記憶體使用方面有了長足的改善,這部份在後面會有相關測試介紹,請耐心往下看吧!或許是小弟沒有使用『任何』套件習慣的關係,使用了 3.0b1 一個多星期之後,並沒有遇到什麼問題,也沒有什麼不習慣,一切都很順利(因為沒有套件過渡期),只不過它仍然只是測試版,不建議大家拿來當做一般上網使用,嚐鮮看看倒無大礙,但是要記得做好設定檔(profile)的備份喔!

新發現...


打開 3.0b1 之後映入眼簾的是它的外觀(廢話!),網址列後邊多了一個星星以及個人書籤列的最前端多了一個『Places』的快顯目錄;星星用處比較不容易解釋,其意義類似『你覺得這個網頁不錯,投它一票』的感覺,而『Places』快顯目錄則是統計最近給過星星的網頁及最近瀏覽過的網頁...等等,後面有更詳盡的說明。

除此之外,其實外觀上並無太大不同(個人書籤列後面四個為 Portable App 自動建立,因此不屬於 Firefox 本身),不過聽說開發團對正在設計新的介面,或許我們在 beta 2 上頭就能看到了,讓我們期待吧!

星星

網址列後面的星星在還沒給過(點擊過)之前,會呈現灰色如上圖。如果看到喜歡的網站,可以點一下星星加入 Places 中。


已經給過(點擊過)星星的網頁,再點擊一次就會出現類似快速加入書籤的功能介面,雖是快速功能介面,但是已經相當完整了。如果新增 Tag(標籤)以後,Tag 底下的欄位則會出顯核取列表,直接勾選就可以套用不必再打一次,很貼心的設計,但是小弟一直很少用到 Tag 功能(包括我的部落格),所以圖片裡沒有 Tag 列表(汗)。當網頁加入書籤以後,Firefox 就會自動將該網頁標上星星,不管是從星星鈕或者從上面的書籤功能列中加入都一樣。


另外,在網址列下拉清單中,已經給過星星的網頁其網址後方會加上一個星號,代表它已經給過星星了。

星星的用處並不止於此,當你按第一下星星時,網頁雖然並不會加入書籤,但是 Firefox 已經紀錄這個網頁,可以透過新版書籤功能介面的搜尋功能來找到這些曾經給過星星的網頁,對於一些經常看到喜歡的網頁卻不想加入書籤的人來說,是一個很棒的功能,不會造成像小弟這樣落落長的書籤也能儲存喜愛的網頁。不過小弟認為星星可以有更好的用處 - 成立網站,透過星星的功能,統計全球的網頁受歡迎程度並統計排行、星星數量,雖然類似 digg.com 網站,但是使用者只要按下星星就可以統計,比起 digg.com 要方便多了。

Places

台灣社群似乎還沒決定『Places』的翻譯(或者已經拍板定案? 地方? 位置?),而根據小弟的翻譯經驗,我也無從翻譯起,這個詞只能意會不能翻譯啊!

『Places』底下分為六個子選項,分別是(下面是從小弟的認知來解釋的,不一定正確):
1. Recently Starred Pages:近期"給過星星(Starred)"的網頁
2. Recently Visited Starred Pages:近期曾訪問"給過星星(Starred)"的網頁
3. Most Visited Starred Pages:最常訪問"給過星星(Starred)"的網頁
4. Recently Used Tags:近期使用過的"標籤(Tag, 註1)"
5. Most Used Tags:最常使用的"標籤(Tag, 註1)"
6. Most Visited Pages:最常訪問的網頁

Places 的功能小弟使用的這段期間很少用到,可能是原先的使用習慣的原因吧!不過從 Places 在工具列的位置和快顯選單的設計,可以看出 Places 用途就是書籤與星星的快速統計列表,讓你迅速連上最常去或最近覺得不錯的網頁,不必再從書籤裡慢慢翻找點選。

註1:這邊所提到的 Tag(標籤),是新版書籤(Bookmarks)中的功能,後面會介紹到。

Place Organizer

書籤功能介面...不!從圖中的標題列可以看到新版的是 Places Organizer(Places 組織器),取代了原本的書籤管理員,用來管理 Places 及書籤等相關功能。
Places Organizer(Places 組織器)感覺上比舊版的書籤功能介面較簡潔有力,上方的功能列表簡化剩下上、下一頁、Organize(組織)、Views(導覽)、Import and Backup(匯入及備份)。

1. Organize(組織):新增書籤、快顯目錄、剪下、貼上、刪除...等,基本書籤管理功能。
2. Views(導覽):分 Show Columns(顯示欄位)、Sort(排序)兩大類。
 a. Show Columns(顯示欄位)可以自由設定欄位的項目,如:Tag(標籤)、網址、訪問日期、訪問次數、關鍵字、描述、加入日期、最後修改時間...等八項。
 b. Sort(排序)則是可以上述八個項目來排序,並且有順序、反序可以選擇。
3. Import and Backup(匯入及備份)除了匯出、匯入、備份之外,還可以選擇書籤還原時間或單一檔,3.0b1 每天都會自動幫你備份一份書籤,有效備份時間為五天,如果書籤損毀或遭人修改,可以選擇五天內的備份來還原。

另外,我想大家一定都注意到底下的欄位了吧!? 這也是新版書籤功能介面中最大的改變,新增了更詳細的管理介面,可以輸入 Tag(標籤)、關鍵字、描述...等功能,讓使用這在管理、尋找書籤的時候更加方便,透過關鍵字的設定,可以在網址列輸入關鍵字即開啟網頁的功能更是方便,但是像小弟這種已經有幾百個書籤的使用者,或許早就懶得去整理(要我全部加上 Tag 或關鍵字乾脆叫我把書籤砍光算了Orz)了!? 旁邊 Preview 的功能似乎尚未備齊而沒有作用,應該是用來預覽書籤截圖用的(吧!?)。搜尋列則是縮小到右上邊去,這樣一來下面主要管理區又變得更大,畫面上可以容納更多書籤,管理起來更方便了。

附加元件管理

附加元件介面中,除了原本的 Extensions(擴充套件)、Themes(佈景主題)之外,新增了 Plugins(外掛)頁面。前兩項的功能沒有什麼變更,新增的 Plugins(外掛) 頁面則是用來管理 Firefox 的外掛,如:Adobe Acrobat 的 PDF 外掛、Java 外掛、Shockwave Flash 外掛...等等,一般來說 Plugins(外掛)比較少動到,可以不用去理它。

下載管理員

下載管理員的視窗介面簡化了不少,除了下載項目中的文字連結被改成小圖示之外,增加『Infomation(資訊)』鈕(右邊那個小圖示),點擊顯示檔案下載時間、網址、存放位置。左邊的小圖示則是『Open(開啟)』,按下去即執行/開啟檔案。

視窗邊邊的按鈕也被拿掉,取而代之的是一個小小的搜尋列,透過搜尋的方式找到自己曾經下載過的檔案項目,不用花時間慢慢捲動、慢慢找,是很實用的功能。至於舊有的下載位置鈕以及清除鈕則簡化到又建功能表中,在項目上點擊右鍵就能看到,如:『Open Containing Folder(開啟儲存目錄)』、『Remove(移除)』、『Clear List(清除清單)』...等。

關閉警示

3.0b1 增加許多意想不到的貼心功能,例如當你關閉視窗正開著多分頁時,程式就會跳出提醒,而與舊版不同的是 3.0b1 可以選擇儲存目前正開啟的分頁,下次開啟時可以還原你開啟的分頁,而不必在茫茫的書籤海中或者歷史紀錄中找尋那些分頁,如果哪天你正辛辛苦苦寫開箱文的時候不小心按到關閉視窗的按鈕時,我想你就能體會出這個功能的好處了...Orz

設定頁面

Option(設定)的部份除了介面高度較高以外,有四項變動,分別是:
1. Main(主要)頁面底下新增 Add-ons 項,功能點擊開啟附加元件的管理視窗。
2. 原本舊版在 Advanced(進階)中 General(一般)頁面下的 Language(語言)項目變更到 Content(內容)底下。
3. 取消原先的 Feed(消息來源)頁面,並將 Content(內容)頁面底下的 Application(檔案類型)項目獨立成一個頁面,並取代 Feed(消息來源)頁面的位置。
4. Security(安全)頁面中增加了『Tell me if the site I'm visiting is a suspected attack site.』主要用來阻擋並告知網站中含有惡意程式,如:木馬、間諜軟體、病毒...等。

雖然做了變動,但不知道是小弟後知後覺,還是開發團隊太厲害,一直到小弟用比對的方式才發現兩者之間的差異;不過說實在的,小弟使用一個多星期以來很少開啟設定視窗,大部分的時候預設值就已經足夠使用,不必再多做設定了。

玩玩看...

除了各項新增功能之外,Firefox 3.0 在核心引擎上也大幅修改並變更為最新版本的 Gecko 1.9,而另一重大改革則是將整個 Firefox 移植到 Cairo,透過類似 Windows GDI+、MaxOS X Quartz 2D 的繪圖 API,將原本只用 Cairo 來處理 SVG 圖像的 Firefox 改由 Cairo 來『全權處理』,因此 Firefox 3.0 的網頁和介面本身通通都是用 Cairo 處理,靠著 Cairo 良好的跨平台性使得 Firefox 3.0 在各個平台開發更加簡便、網頁畫面更加一致。

由於開發團隊更改了 Firefox 3.0 的基本架構,因此小弟做了一點測試,看看效能如何?
測試項目分別是網頁載入速度、Javascript 處理速度、記憶體使用測試,測試版本為 Mozilla Firefox 3.0 beta 1Mozilla Firefox 2.0.0.9 官方版pigfoot Firefox 2.0.0.9 P3版(SSE2優化版)tete Firefox 2.0.0.9 Visual C++ 2003 G7 SS2 優化版,利用這些版本做成 portable 版本來進行測試,同時移除所有擴充套件來達到公平的標準,而由於電腦配備、網路頻寬皆影響著測試結果,因此所有數據僅供參考。

另外,小弟在進行本文撰寫、測試之前 Mozilla 尚未發佈 2.0.0.10、2.0.0.11,因此使用 2.0.0.9 來進行測試,而本測試結果只反映 Firefox 3.0 "Beta 1" 效能,並不代表最後 Firefox 3.0 的正式版的效能,一般而言開發團隊在正式版上還會進行效能調校,所以正式版可能會有不同的結果。


網頁載入的部份採用 Mobile01 首頁做為測試,為了方便計時,各測試版本皆安裝了 FasterFox 來計時,而 FasterFox 的設定則選擇預設(Default),以不影響 Firefox 速度為原則。

測試方式是將 Cache 清空,然後再重開主程式,接著開啟 Mobile 01 首頁,再加上以 Ctrl + F5 重新載入九次,一共十次。紀錄 FasterFox 顯示時間並加以平均而得。
從數據可以看出 3.0b1 快 2.0.0.9 官方版超過 0.7 秒,甚至比任何優化過的 2.0.0.9 版還要快,成績優異且進步甚多!

整體速度測試排行:Mozilla Firefox 3.0 beta 1 > tete Firefox 2.0.0.9 G7 SSE2 > pigfoot Firefox 2.0.0.9 P3(SSE2) > Mozilla Firefox 2.0.0.9 官方版。


處理 Javascript 處理效能差一直都是 Firefox 效能低落的原因之一,針對這個弱點小弟使用Js speed test 2007來測試(從這裡將測試檔案獨立出來存入電腦,從電腦中測試),pigfoot、tete 都針對這方面做了相當大的補強,但是仍然輸給 Opera 以及 Safari。

測試方式很簡單,按下『Run Test』之後待結果出現然後紀錄『Total Duration』,反覆十次並取平均值;從測試結果可以發現 3.0b1 處理 Javascript 處理效能比 2.0.0.9 官方版還要來得差,不知道是不是因為 beta 的原因,希望正式版能夠有所改善。

Java Script 處理測試排行:pigfoot Firefox 2.0.0.9 P3(SSE2) > tete Firefox 2.0.0.9 G7 SSE2 > Mozilla Firefox 2.0.0.9 官方版 > Mozilla Firefox 3.0 beta 1。


最後一項測試是記憶體使用量的測試,應該也是大家最關心的部份。
從 1.5 版開始 Firefox 總是不斷的吞下記憶體,吐出來的卻不成正比,因此在記憶體使用方面一直為人所詬病,到了 2.0 一樣沒有改善,但是小弟不久前看到令人振奮的消息,且待小弟試試便知!

測試項目一共有九項,在這邊稍微解釋一下(由上往下):
1. 剛開啟時:Firefox 剛開啟時,記憶體的使用量。
2. 開啟靜置3分鐘後:Firefox 開啟以後靜置三分鐘之後記憶體的使用量。
3. 開01首頁:以 Mobile 01 作為測試目標,開啟 Mobile 01 首頁時記憶體的使用量。
4. 21頁開啟中:除了 Mobile 01 首頁之外,增開20頁 Mobile 01 相機討論版面中的20篇文章,其開啟時的最大記憶體使用量。照片加總超過900張,這21頁當時忘記紀錄網址,現在已經不可考...Orz
5. 21頁開啟完畢:上述21頁開啟完畢時瞬間的記憶體使用量。
6. 21頁開啟完畢後靜置10分鐘後:上述21頁開啟完畢之後靜置10分鐘後的記憶體使用量。
7. 21頁瀏覽時:靜置10分鐘之後開始瀏覽,瀏覽時的最大記憶體使用量。
8. 21頁瀏覽完畢靜置10分鐘後:21頁瀏覽完畢之後再靜置10分鐘之後的記憶體使用量。
9. 關閉增開的20頁:關閉後來增加的20頁,單獨保留原先開啟的 Mobile 01 首頁時的記憶體使用量。

懂?不懂應該滿正常的,小弟自己都覺得好像在繞口令,請往下看小弟的解說(雖然還是有點像繞口令)...!
在剛開啟靜置三分鐘之後,發現三個 2.0.0.9 的版本都會逐步吞食記憶體,而 3.0b1 恰好相反。開啟 Mobile 01 首頁時,兩個 2.0.0.9 優化版使用量最多,2.0.0.9 官方版最少,但是開啟20頁的時候由於大量圖片的關係,開始大量吞食記憶體,2.0.0.9 各版本都一路往上竄升到7百多MB,而 3.0b1 則是因為不斷釋放的原因,因此並沒有快速飆高,等到開啟完畢之後兩個 2.0.0.9 優化版本皆一口氣釋放所有記憶體使用量(pigfoot 採用 tete 所編譯的 DLL 檔案,所以兩者會有相同的結果),3.0b1 則慢慢釋放,而 2.0.0.9 官方版本只稍稍降了幾MB即停止,始終居高不下,表現最為『突出』...Orz

開啟完畢並靜置10分鐘之後,3.0b1 並無太大變化,pigfoot 版本降、tete 版本升,最後達到差不多的水平,反觀 2.0.0.9 官方版又吃了一些記憶體。接著開始瀏覽網頁,此時瀏覽器再度載入先前釋放的資料,因此記憶體使用量再次攀升,比較詭異的是 2.0.0.9 官方版本卻降下來了,不過 3.0b1 使用量仍然最低。
再次將 Firefox 靜置10分鐘,並觀察記憶體使用量的變化,2.0.0.9 兩個優化版本這時卻不再釋放記憶體,維持在7百多MB,3.0b1 還是持續釋放記憶體,但令人驚訝的是 2.0.0.9 官方版這回合吐出大量的記憶體,使用量最低。最後將剛剛開啟的20頁關閉,發現官方版本都將記憶體吐得相當乾淨,而 2.0.0.9 官方版更勝一籌,兩個優化版卻敬陪末座。

記憶體使用測試排行:Mozilla Firefox 3.0 beta 1 > pigfoot Firefox 2.0.0.9 P3(SSE2) > tete Firefox 2.0.0.9 G7 SSE2 > Mozilla Firefox 2.0.0.9 官方版。
記憶體測試排行是由九個測試項目值加總作為依據,但各版本在各項目皆各有所長,排行僅供參考。

另外,在此附註一點,2.0.0.9 各版本在進行開啟21頁、超過9百張圖片測試時,發現都會有部份(幾張到十幾張)圖片會整張黑掉,而 3.0b1 測試時雖然沒有這種情況,不過在後來這一個多星期的使用中也曾經出現黑圖的情形。

意猶未盡...

寫這篇文章的同時開發團隊也馬不停蹄地在開發新的功能,除了 nightly build(逐日測試版)的新功能越來越豐富之外,本文編寫時間更創造『橫跨了 2.0.0.9、2.0.0.10、2.0.0.11 三個版本』的傲人紀錄,足以看出小弟在本文上耗費的時間(謎: 打混的時間)有多長了。

在這一個星期的試用之下,發現了個小小的問題,就是無法透過拖曳的方式將分頁"拖"進書籤中,有點不習慣,不過這並不是最大的問題,目前 3.0b1 已知最大的問題其實是...沒有正(繁)體中文版!!!希望能早點看到正(繁)體中文版的出現。

而 3.0b1 變更的部份除了上面列舉的部份之外,還有幾項小弟並沒有寫出來,像是分頁左右捲動從"跳躍"變為滑動、書籤(Bookmark)中的圖示(icon)會隨著網頁圖示更新而更新,不像舊版只讀取第一次、超連結的虛線框剛點下去的時候是紅色的,待網頁開啟以後會變為灰色...等等;除了這些,開發團隊還慢慢加入了許多新功能

雖然 3.0b1 在 Js 處理測試的部份表現得不夠亮眼,但是改進、新增的功能比那要更讓人驚訝與期待,尤其是社群優化版(pigfoot、tete...等等),若針對處理 Js 的部份做改進的話,那麼 Firefox 3 將會更加快速、完美,好期待啊!

不知不覺地寫了這麼大一串,希望沒傷到位看倌的眼睛,感謝各位的收看以及 G.F 大的幫忙,本文就此告一段落,文章將發表在我的部落格Mobile01MozTW,謝謝。