那麼是否效率高的瀏覽器,也代表者本身能夠支援的標籤或程式語法越少呢?
撰寫網頁程式的人都知道,在IE瀏覽器可以執行的網頁,特別是那些功能性的網頁,而非純透過CSS網頁版型所設計的靜態網頁,在其他的瀏覽器會發生無法作用的窘況。
過去有人用VBscript寫網頁程式的人,你會發現只能在IE瀏覽器上跑,這是當然的啦。
但現在連用 Javascript 寫網頁程式,也會發現一些內定的函式,在Chrome和Firefox上無法執行,或者發生了誤差,造成網頁設計者的困擾。
特別是在Firefox上表現得最差,其次是Chrome,而IE則支援很多的函式庫,因此想用Javascript 寫網頁程式,讓一個圖片有半透明度的效果,在IE瀏覽器可以呈現出效果,在其他瀏覽器則無法顯示。
為什麼說Firefox瀏覽器表現得最差呢?因為它連控制瀏覽器被打開來時,該定位在螢幕上哪個位置(x,y)座標的能力都沒有。反觀Chrome瀏覽器承載了這方面在Client端所支援的Javascript的部分函式庫。但也只是部份而已,因為它不具備能夠完整控制瀏覽器透過程式碼,去調整瀏覽視窗的大小和移動。
所以在看一本Javascript設計大全的書籍時,讀者要注意到裡面很多的函式應用,在後來誕生開發的瀏覽器,如Chrome和Firefox,不一定會支援,因此若要考慮到不同瀏覽器所表現的差異性,必須要在不同的瀏覽器做測試,盡量引用都有支援交集的部分來編寫網頁程式。
注意是網頁程式設計,而不是網頁版型設計喔,後者只需要用烘培基FrontPage 或 夢想編織機 Dreamweaver 用滑鼠拉一拉點一點就能完成一張網頁。這樣的網頁在不同的瀏覽器上跑,差異性不大,但是當編寫網頁程式時,就可能出現所謂的程式災難,在不同的瀏覽器出現不同的效果,例如偵測時間年的函式,所得到的數值,IE和Chrome得到的答案會不同,必須要額外寫一個判斷敘述,檢查使用者是用哪一個牌子的瀏覽器,去決定走哪一條程式描述,這一點非常的討厭,而且當更多不同牌子的瀏覽器出來之後,爭相以所謂效率取勝時,就忽略瀏覽器本身的內在涵養,也就是它所具備支援的內建程式庫。
因此,像排行老三的Firefox,筆者根本就不想去理會它,畢竟它完全不成熟,要不然每個寫網頁程式的人不是要過勞死了嗎?世界上有十種牌子的瀏覽器,就要在程式裡寫出十條 if elseif 的述句,因為同樣一條程式碼,在不同的瀏覽器呈現的樣貌卻不一樣,都要一一的照顧,這不是天下大亂了嗎?就好比學英文,文法會在不同的國家有不同的規則,那麼英文學起來就很痛苦。
不談網頁程式設計面,就我個人使用瀏覽器的經驗,喜歡用Firefox瀏覽器,進入臉書,並在臉書裡執行比較複雜的遊戲軟體,並同時開出不同的頁籤,執行不同的遊戲。整個過程Firefox瀏覽器動作快速流暢,令人愉快。如果是使用Chrome瀏覽器就略遜一籌了,但也還算優啦。
假如是使用IE瀏覽器,就會很不順,一直候在那裏,然後瀏覽器當掉。由於我使用瀏覽器的習慣會同時開出不同的頁籤畫面,分別做不同的事情,可以隨時切換,再加上我的筆電有五年的歷史,還有我上網的速率是最低的每月299。因此最能敏感的感受到不同瀏覽器效率的差異。
但是回到技術面的角度,如果您是撰寫網頁程式的人,為了進行偵錯工作,我推薦使用Chrome瀏覽器,因為它裡面的[工具 /開發人員工具]提供很多的資訊和很好的檢驗資訊,相對於 IE這個老牌的瀏覽器它就顯得比較陽春了,因此我現在是以Chrome瀏覽器當作網頁程式除錯的工具。
而如果要玩網路遊戲,則強烈建議用Firefox瀏覽器打開它,不建議用IE瀏覽器,除非你的電腦比較新,向中華電信租用所謂光纖速率50M(號稱),電腦配備擁有四核心,螢幕顯示卡記憶容量也是頂級的。要不然普通老舊的電腦,加上你上網用最省錢的,還想玩線上網路遊戲,請用Firefox瀏覽器吧,用IE瀏覽器它會很忙錄跑不動,一直給你臉色看,你會得憂鬱症腦充血的。
IE瀏覽器因為發展的歷史很久,因此包含了很多過去HTML 的標籤語法,以及大量完整的Javascript函式庫,同時本身又有VBscript閱讀能夠執行的功能,所以有著歷史的包袱,就像一個老人一樣。
因此,IE瀏覽器的智商最高,但是因為太有智慧,年高德劭,雖然要對它敬老尊賢,但是它拿著拐杖走路,速度是有點慢啦。不過我們都很尊敬它,因為它陪著比爾蓋茲,走過DOS 時代,記得在 DOS 5.0版時,要另外安裝外掛所謂的 Window 2.0進入滑鼠操作的介面,之後DOS 6.0成為末代版後,Window 3.1作業系統進入非指令的滑鼠操作介面,IE瀏覽器就在那個洪荒草創的年代裡,陪著當時少數會上網的人度過每個孤獨的夜晚。
然後再進入Window 95、Window 98、IE瀏覽器的身影進入了十八姑娘一朵花,正值荳蔻年華,把當時的林志玲逐漸逼到懸崖邊,然後推落山谷,可說是天使的面孔,蛇蠍的心腸。也就是當時最夯的 Netscape 瀏覽器,這麼美的女子,竟然被打入冷宮最後丟入井裡,我相信當時有許多 Netscape 瀏覽器的愛用者,曾為它哭泣(我也是),生起對IE瀏覽器的恨意,無奈一切形勢比人強,微軟作業系統綁架了全世界的PC電腦。
於是IE瀏覽器得意的進入Window me、Window 2000、Window XP、Vista 、Window 7,未來的Window 8 還是會有它的身影,只是頭髮白了,背也駝了。但是我們不能放棄它,因為大部分的公家機關的電腦使用微軟作業系統,都使用IE瀏覽器上網,使用在IE瀏覽器之下所開發的網頁程式,特別是你要做維護案時,接手之後都是前人寫過的程式,而且經過好幾人之手,在裡面你會看到歷史的遺跡,各種雜亂的程式備註,他們都是用記事本,或程式設計工程師愛用的 UltraEdit編輯器所寫的網頁。這些網頁程式是ASP、JSP同時含有大量的Javascript程式碼,也包含一些只有IE瀏覽器看得懂的 HTML語法標籤。
也就是說,在IE瀏覽器上可以開發出的效果,如果使用其他後來誕生的瀏覽器則無法顯示,包括在PCHOME這樣的商業型網頁,也必須使用IE瀏覽器才能進得去。過去有網友寫的萬年曆,裡面一堆Javascript程式碼,現在我用Chrome瀏覽器來執行,發現無法動作。
因為Chrome瀏覽器根本看不懂這些Javascript程式碼,這代表這個瀏覽器本身的智商不高,就好像一名年輕人,國學造詣很差,看不懂文言文。筆者再用Firefox瀏覽器來看,發現它更笨,因此最近Firefox瀏覽器頻頻改版,提升自己的智商,因為之前連CSS的支援也不多。
所以要開發一個新的瀏覽器視窗,效率不是最重要的,主要是它能提供的功能,就好像在Sever端,安裝不同的函式庫和相關的設定,要能看得懂 CGI寫的程式碼,看得懂 ASP寫的程式碼,看得懂 ASP.net寫的程式碼,看得懂 JSP寫的程式碼,看得懂PHP寫的程式碼。這些後端的支援不同的網頁程式越多,承租給客戶使用的網頁空間費的價格就越高。
因為網頁空間的使用,就是要進行資料庫的交換,進行互動式的網頁呈現。同樣的瀏覽器本身在Client端,功能強大可以配合後端做更多的事情,IE瀏覽器繼承了人類在網頁設計上歷史的發展,也涵蓋了許多不同程式語法的版本,提供比較多而完整的Javascript函式庫,因此IE瀏覽器就像微軟的作業系統一樣,越來越肥,當然也越來越有智慧,智商也越高,但是行動越來越笨拙。
如果你想利用簡單的按鈕,做出滑鼠移入時,離開時,按下時,產生不同的效果,包括有音效聲音,不只是顏色的變化,只有IE瀏覽器辦得到。只要使用 HTML + Javascript 就能達到。
但是同樣的網頁放在Chrome瀏覽器則失去部分的功能作用,你只能用其他救濟的辦法,那就是使用FLASH製作按鈕,但是它有一個問題,當你的網頁是屬於功能性的網頁時,用FLASH製作按鈕無法針對 HTML所佈置的物件,例如 TEXT 進行與Javascript 的溝通。因為這是兩種不同的語法,一個是FLASH下所開發撰寫的 Action Script,另一個是在網頁編輯下所撰寫的 Javascript,因此兩種不同程式語系無法彼此叫用。
也因為如此,功能性網頁的設計配合CSS + Javascript 從過去到現在 IE瀏覽器一直都能完整提供,其他品牌的瀏覽器則只能寫寫所謂新聞呈現、商品呈現的網頁型態設計。
而且最重要的一點是公家機關的電腦在台灣已經是微軟的忠實顧客,就像微軟的殖民地一般,如果你要接政府的案子,就必須要在IE瀏覽器下看世界,要能充分應用前端畫面所提供的 Javascript 許多語法。你不能在Chrome瀏覽器下編寫程式,發現無法執行就認為這個需求無法辦到,而一定要用所謂的FLASH撰寫,去展現那個 SWF。
因為在IE瀏覽器能夠辦到上面的事情,使得按鈕的功能因為支援完整的Javascript 函式庫,而展現出強大的效果。這時如果使用SWF來達成,也就是透過FLASH製作,很可能在IE瀏覽器上效率不彰,而且在實作上如果是功能性的網頁,是根本無法使用SWF安置在網頁上進行做事,並不是不要用。
現在有一個迷思是,前端的瀏覽器是否要有承載許多功能?導致效率降低,應該放在後端來執行,還是減少後端的工作負擔。牽涉到給網頁設計者什麼樣的服務,如果希望能在前端瀏覽器都能輕易辦到,不要統統交給後端來做,那麼這是比較勝任愉快的。否則,您必須學習撰寫後端程式的網頁內容,而不能只靠HTML + CSS + Javascript 來辦到。
但對於一般的使用者而言,瀏覽器的功能本身提供可以支援的函式庫,並不是重要的事,我們要的是畫面的流暢,打開超連結就能迅速進入,不要太聰明到連各種程式語法都能解讀,導致畫面突然出現一個廣告,用Javascript寫,用CSS寫,同時瀏覽器本身還會自己移動和縮放,這是寫程式的人的最愛。可是在Firefox瀏覽器上,它笨到連這些程式語法都看不懂時,就少了這些網頁效果,有時並不是因為故意擋掉的喔,而是無法解譯這些程式碼所致。於是網頁跑起來特別的順利,沒有什麼雜七雜八的干擾,這就是執行效率高的瀏覽器的代價。
所以要論瀏覽器本身的智商高低,IE拔得頭籌,Firefox則還是個娃兒。若以行動敏捷網頁執行的效率來說則剛好顛倒,Firefox比Chrome瀏覽器還優,最差的是IE瀏覽器。
This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at fivefilters.org/content-only/faq.php#publishers. Five Filters recommends: Donate to Wikileaks.
0 意見:
張貼留言