控件:是編程中用到的,按鈕就算是一個控件,窗口也是等等
組件:是軟件的一部分.軟件的組成部分.
插件:網(wǎng)頁中用到的,flash插件,沒有它瀏覽器不能播放flash.
首先范圍最廣的應(yīng)該是組件,英文component,提起組件我們不應(yīng)該把他和具體的技術(shù),什么dll文件,ocx控件,activex等等聯(lián)系起來,因為組件僅僅是一個概念,如果非要解釋的話,那就是凡是在軟件開發(fā)中用到了軟件的復(fù)用,被復(fù)用的部分都可以稱為組件。構(gòu)件的英文也是component,所以說構(gòu)件和組件其實是一個意思只是翻譯的不同而已。
其實我認(rèn)為最有意思的應(yīng)該是插件,顧名思義,“插件”是允許我們動態(tài)插入的,而不是在編程的時候靜態(tài)的寫入的,這就是與普通的組件的區(qū)別,因為普通的組件是在編程的時候引入的。我們以硬件為例子,例如USB接口,主機設(shè)定了標(biāo)準(zhǔn)的接口,而不必考慮外部接口具體是什么設(shè)備只要這種設(shè)備實現(xiàn)主機提供的接口,兩者就可以通訊。這種插件有個最大的優(yōu)點就是即插即用,即支持動態(tài)的插入。
插件是組件(構(gòu)件)的一種,我們可以這樣給插件進行定義,那就是凡是在應(yīng)用程序中已經(jīng)預(yù)留接口的組件就是插件,例如:Java中jdbc技術(shù),jdbc只是一個接口,任何一個插件制造商只要實現(xiàn)這個接口都可以被java平臺所使用。我們還可以拿IE插件作為例子,IE中之所以可以嵌入很多的應(yīng)用程序,那是因為IE允許他們插入,說的明白一點,那就是在IE的源程序中已經(jīng)為這些應(yīng)用程序預(yù)留了接口,只要把通知瀏覽器已經(jīng)加載了什么插件,瀏覽器就會調(diào)用預(yù)留的接口調(diào)用這些所謂的插件。
當(dāng)然控件也是組件(構(gòu)件)的一種,按照網(wǎng)上的說法,控件就是可視化的組件,我也同意這種說法,其實再從普通組件中分解出控件完全是沒有必要的,因為對于開發(fā)人員來講,可不可視對于非軟件人員來說可能很重要,但是對于軟件人員來說又有什么區(qū)別呢?
轉(zhuǎn)自:http://napolone.blog.sohu.com/50847701.html
==================================================================
組件、控件和插件的區(qū)別
一、 概念
A、 組件
系統(tǒng)中一種物理的、可代替的部件、它封裝了實現(xiàn)并提供了一系列可用的接口。一個組件代表一個系統(tǒng)中實現(xiàn)的物理部分,包括軟件代碼(源代碼,二進制代碼,可執(zhí)行代碼)或者一些類似內(nèi)容,如腳本或者命令文件。簡而言之,組件就是對象,是對數(shù)據(jù)和方法的簡單封裝。C++ Builder中叫組件,Delphi中叫部件,而在Visual BASIC中叫控件。
組件可以有自己的屬性和方法。屬性是組件數(shù)據(jù)的簡單訪問者。方法則是組件的一些簡單而可見的功能。
B、 控件
控件是對數(shù)據(jù)和方法的封裝。控件可以有自己的屬性和方法。屬性是控件數(shù)據(jù)的簡單訪問者。方法則是控件的一些簡單而可見的功能。
C、 插件
插件是一種遵循一定規(guī)范的應(yīng)用程序接口編寫出來的程序。很多軟件都有插件,插件有無數(shù)種。例如在IE中,安裝相關(guān)的插件后,WEB瀏覽器能夠直接調(diào)用插件程序,用于處理特定類型的文件。
二、 區(qū)別
A、 組件與控件
一般把Control翻譯成控件,把Component翻譯成組件。控件就是可視化的組件。
asp組件一般來說是以DLL為后綴的文件。它允許使用者根據(jù)不同需求來調(diào)用系統(tǒng)COM組件,以完成所要達(dá)到的目的。常用的有:上傳組件、Email組件、統(tǒng)計組件、文件管理組件等。在asp中調(diào)用前須先把組件注冊到系統(tǒng)里。
控件例如有ActiveX控件、Windows公共控件等。
B、 組件與插件
組件和插件的區(qū)別是,插件是屬于程序接口的程序,組件在ASP中就是控件、對象,ASP/IIS的標(biāo)準(zhǔn)安裝提供了11個可安裝組件。ASP的FSO組件,就是最常用的Scripting.FileSystemObject對象
IE瀏覽器常見的插件例如:Flash插件、RealPlayer插件、MMS插件、MIDI五線譜插件、ActiveX插件等等
三、 說明
想要弄清楚組件、控件和插件三者的區(qū)別,在網(wǎng)上搜了搜,并沒有搜到清晰明確的說明,簡單整理了一下,由于水平和理解有限,有什么問題或者缺少的內(nèi)容,歡迎拍磚,后續(xù)理解的比較好了之后,也會不斷更新的。
聯(lián)系客服