來講一說chrome擴展和chrome插件到底有什麼區別?

想討論chrome擴展和chrome插件區別這個話題好久了!可是遲遲沒有寫。由於我本身也沒有搞清楚這二者之間的區別!回想當初是由於須要尋找番羽牆插件纔想到去搜索到chrome插件。

想討論chrome擴展和chrome插件區別這個話題好久了!可是遲遲沒有寫。由於我本身也沒有搞清楚這二者之間的區別!回想當初是由於須要尋找番羽牆插件纔想到去維護一個相似的插件網。我甚至問過身邊不少程序員這二者之間的區別,說實話能說清楚的也沒有幾個。今日在論壇裏看到有熱心的網友推薦這個chrome網,甚是欣慰。可是看到一位網友的回覆時我才意識到我該去好好了解一下chorme擴展和chrome插件的的區別。那位網友說:這不叫「插件」,這叫「擴展」,名稱都叫不對的網站直接無視!

首先,想要直觀的去了解在chrome裏插件和擴展到底有什麼區別?怎麼去區分時,咱們只須要查看以下兩個地址就能夠了!
    chrome://settings/extensions  這裏面的是擴展
    chrome://plugins/                     這裏面的是插件
chrome插件

chrome擴展


其次,從英語翻譯來看,插件對應的是「Plugin」,擴展對應的是「Extension」,因此它倆背後實際上是兩個徹底不一樣的詞!

再次,從功能來看來。"擴展"和"插件",其實都是軟件組件的一種形式,Chrome 只不過是把兩種類型的組件分別給與了專有名稱,一個叫"擴展",另外一個叫"插件"。程序員

  • 擴展(Extension),指的是經過調用 Chrome 提供的 Chrome API 來擴展瀏覽器功能的一種組件,工做在瀏覽器層面,使用 HTML + Javascript 語言開發[*]。好比著名的 Adblock plus。
  • 插件(Plug-in),指的是經過調用 Webkit 內核 NPAPI 來擴展內核功能的一種組件,工做在內核層面,理論上能夠用任何一種生成本地二進制程序的語言開發,好比 C/C++、Delphi 等。好比Flash player 插件,就屬於這種類型。通常在網頁中用 <object> 或者 <embed> 標籤聲明的部分,就要靠插件來渲染。
最後,從安全性 上來看,因爲插件通常實現的都是比較 底層的功能,因此一旦出現問題,每每就會牽涉到整個操做系統,像 Flash 插件就屬於常常被扒出高危漏洞的那一類。相比較之下,擴展出現問題,其危害性類每每似於瀏覽器漏洞。不過 Chrome Extension 在爲用戶帶來便利的同時,也的確帶來了很多安全問題,Google Chrome 的穩定版甚至還禁掉了 Windows 用戶安裝 Chrome Web Store 外擴展的權限。即使是在 Chrome Web Store 中的應用也不能保證絕對安全,由於 Google 本身也下架過一些有安全隱患的擴展。


總的來講:拓展就是利用瀏覽器提供給你的功能,經過本身搭配來實現一些功能組合,一般利用JavaScript這樣的腳本語言來完成,只要調用瀏覽器提供的接口便可。而插件是瀏覽器提供的功能已經不能知足你的組合了,你須要利用C++這樣的編譯語言來拓展瀏覽器能夠提供的功能,來供你調用。一句話歸納,插件功能強大可是製做麻煩,拓展功能受限可是製做簡單。

chrome

相關文章
相關標籤/搜索