在處理瀏覽器問題的時候,經常會接觸到這些名詞,大多時候都是混着用的,這樣子其實並沒有真正理解這些名詞指代的是什麼東西,也不好具體定位問題原因的。我根據自己使用瀏覽器的經驗,說說我的理解的這些東西的區別。
首先對照一下中文和英文。
控件——ActiveX
插件——Plugin
附加組件——Addon
擴展——Extension
應用——App
再來對其進行分類,兩個分類標準:
1、按照服務對象區分:
服務IE:ActiveX
服務其它非IE內核瀏覽器:Plugin、Addon、Extension、App
2、按照安裝方式區分
由外而內:ActiveX、Plugin
由內而外:Addon、Extension、App
由內而外和由外而內是什麼區別呢?簡單點說就是這個東西是不是“外{過}{濾}掛”,由外而內的就是“外{過}{濾}掛”啦。
即使你沒有安裝瀏覽器,你也可以進行安裝ActiveX和Plugin,因爲他們是不依附於瀏覽器而獨立存在的,是通過註冊了一些文件,以“外{過}{濾}掛”的形式來提供給瀏覽器進行調用,所以說是“由外而內”。當然,如果你不安裝瀏覽器的話,你裝這些東西也沒什麼實際意義。
而Addon、Extension、App之類則是離開了瀏覽器就死了。如果沒有相應支持的瀏覽器的話,這些東西都不能安裝,更談不上運行,他們是建立在瀏覽器本身的架構上的“增值”功能,所以說是“由內而外”。
但是很多國內用戶其實並不對這些進行區分,而是統稱爲插件,所以問題就來了。比如有些用戶沒有安裝Adobe Flash Player插件而無法正常播放視頻,這個時候如果到各個瀏覽器的Addon、Extension、App庫裏面去找,是找不到這個插件的。當然,這個例子舉得不是很恰當,因爲現在手邊暫時沒有很好的例子。
有必要區分得那麼細那麼麻煩嗎?其實沒有必要。簡單一點,就按照安裝方式區分爲兩類。
1、ActiveX和Plugin=插件,這個應該也是大家最常說的了,比如Adobe Flash Player“插件”,不過記得區分IE內核版本(ActiveX)和非IE內核版本(Plugin)就是了。
2、Addon、Extension、App=擴展應用。
PS:一些小邊邊
1、ActiveX和Plugin
其它瀏覽器都支持NPAPI(Netscape Plugin Application Programming Interface),IE曾經也支持過,但是後來卻非要使用自己一套的ActiveX,這個你懂的。另外,如果你觀察過,大部分的非IE內核瀏覽器的插件都是以NP開頭的,比如Adobe Flash Player是npswf32,淘寶的安全輸入插件是npaliedit.dll,這樣看文件名應該很容易知道是什麼插件了吧?
2、Addon、Extension、App
Addon是屬於Mozilla系瀏覽器的,中文名字叫做附加組件,火狐用戶應該很熟悉。
Extension現在就很常見了,新版的Mozilla Firefox、Google Chrome、Opera都是用的這個名稱,中文名稱叫做擴展/擴展程序。
App可以看作增強版的Extension,現在Google Chrome裏面的很多遊戲就歸屬於這個分類。
3、其他IE內核瀏覽器的“插件”
IE內核瀏覽器很多,主要是爲了彌補IE瀏覽器本身功能的不足。現在或者曾經比較主流的幾款IE內核瀏覽器(360安全瀏覽器、世界之窗、傲遊、GreenBroswer等)都有自己的“插件”支持,支持很多增強的功能,比如廣告過濾、下載、截圖等等。So,很明白了,這些“插件”其實就是擴展應用咯~