李偉
【摘 要】在現(xiàn)在社會,計算機(jī)在人們生活中的應(yīng)用越來越廣泛,人們的生活和工作越來越依賴于計算機(jī)。計算機(jī)中的軟件是計算機(jī)工作的重要組成部分,軟件也是計算機(jī)發(fā)展的主要方向,由于插件技術(shù)的出現(xiàn)和發(fā)展,為計算機(jī)軟件帶來新的生命力。文章就計算機(jī)軟件中的插件技術(shù)及應(yīng)用進(jìn)行了分析。
【關(guān)鍵詞】計算機(jī)軟件;插件技術(shù);應(yīng)用
【中圖分類號】TP311.52【文獻(xiàn)標(biāo)識碼】A【文章編號】1672-5158(2013)02-0116-01
現(xiàn)在的計算機(jī)技術(shù)發(fā)展中,軟件的發(fā)展是主要趨勢,因此,插件技術(shù)在計算機(jī)技術(shù)中占有重要的地位,插件技術(shù)在計算機(jī)軟件中的應(yīng)用,使計算機(jī)的軟件功能有了擴(kuò)展,為計算機(jī)的進(jìn)一步發(fā)展創(chuàng)造了有利條件。
一.插件技術(shù)
1.什么是插件技術(shù)
所謂插件指的是一種程序,這種程序是按照統(tǒng)一使用的預(yù)定義接口的具體規(guī)范來進(jìn)行編寫的,處在運(yùn)行狀態(tài)的應(yīng)用程序由接口規(guī)范來調(diào)用插件,以此來使應(yīng)用程序的功能進(jìn)行擴(kuò)展。插件的英文名稱叫做plug in。插件的典型的例子有兩種,一種是ActiveX控件另外一種是COM,但從本質(zhì)上來說ActiveX控件不過是COM的升級版而已。另外的一種插件叫做Photoshop的濾鏡。
計算機(jī)軟件插件最大的好處和作用就是它能夠?qū)崿F(xiàn)程序運(yùn)行時功能可以得到擴(kuò)展。這也就是說,軟件的開發(fā)者只要將插件所使用的預(yù)定義接口規(guī)范進(jìn)行公布,那么其他的開發(fā)商就可以不用對整個程序代碼進(jìn)行編譯,而是只通過插件的開發(fā)來擴(kuò)展功能程序就可以了。所謂的運(yùn)行是在編譯之后才能夠進(jìn)行的。一般情況下。開發(fā)者對軟件功能的更新,是在源代碼級別里進(jìn)行的,然后再重新編譯整個程序,然后將新版本發(fā)布,這就是造編譯時更新軟件。
2.插件的常見類型
在現(xiàn)有的計算機(jī)軟件插件中,主要可以分為以下幾種類型:
2.1.基本的簡單插件
這種插件在計算機(jī)的軟件系統(tǒng)中是最為常見的插件,這類插件和一般的命令軟件比較類似。這類插件的自由度相對來說比較低,和一些比較傳統(tǒng)的軟件相比較,并沒有太大的優(yōu)越性。這一類插件技術(shù)的使用系統(tǒng)主要有Win Hacker以及Win Amp等系統(tǒng),這類插件在安裝完成后,可以根據(jù)自己的需要,將與之相應(yīng)的代碼輸入,這樣一來,能夠保證程序的正常的運(yùn)行。
2.2 特殊插件
在現(xiàn)在的計算機(jī)系統(tǒng)中,使用這一類插件的相對來說比較少。這類插件主要是通過特殊的腳本語言來實現(xiàn)的。這種插件的編寫比較復(fù)雜,編寫者必須要先制作一個與之相應(yīng)的解釋內(nèi)核來對程序進(jìn)行解釋,才能滿足插件的正常,這樣才能使得使用者能夠正確的使用該插件。在我國的計算機(jī)領(lǐng)域,這種插件的研發(fā)還在進(jìn)行之中,微軟曾研發(fā)此種插件,但實際效果不好。但是如果這種插件研發(fā)成功的話,將會使插件的制作大大降低難度,可以在不同的辦公自動化所用的軟件中起到重要的作用。
2.3 普通常用插件
這種軟件在現(xiàn)在的計算機(jī)系統(tǒng)中使用的較為普遍,是現(xiàn)階段比較實用的插件。這種插件主要是利用現(xiàn)有資源環(huán)境來進(jìn)行開發(fā)的,比如常見到的Photo Shop就是用的這種插件。與上文所述的簡單插件相比,這種插件的不同之處是在構(gòu)建程序主體的時候,自定義的接口被設(shè)置若干個,以這種方法來保證所安裝的插件能夠比較自由的訪問在軟件系統(tǒng)內(nèi)的資源。這種插件的優(yōu)勢是自由度比較大,有利于開發(fā)者的發(fā)揮。但是,這種插件的編寫過程比較復(fù)雜,對所用到的接口的協(xié)調(diào)性要求較高,要有專業(yè)人員參與才能夠完成其操作。
二.在實際中的應(yīng)用
現(xiàn)在的插件技術(shù)在計算機(jī)軟件中被廣泛的應(yīng)用,由于它自身的優(yōu)越性,也給計算機(jī)的使用帶來了很大的方便,計算機(jī)插件在實際中的應(yīng)用也越來越重要。
計算機(jī)插件的本質(zhì)作用是在不對計算機(jī)的主體程序修改的情況下來對其軟件的功能加強(qiáng)或者擴(kuò)展。只要開發(fā)者將插件的接口公布,所有的公司或個人都可以來制作自己的插件,以此來解決一些操作問題或者是增加一些新的功能,也就是所謂的“即插即用”。平臺和插件相結(jié)合的軟件結(jié)構(gòu)是把一個將要進(jìn)行開發(fā)的軟件分成兩個部分,一部分叫做平臺,是作為程序的主體,另一部分叫做插件,是作為功能擴(kuò)展以及模塊的補(bǔ)充來使用。
要能夠?qū)崿F(xiàn)這種結(jié)構(gòu),必須先定義兩個標(biāo)準(zhǔn)接口,即插件接口和平臺擴(kuò)展接口。這兩種接口各自都是由各自的相應(yīng)對象來實現(xiàn)的,另一個只是進(jìn)行輔助的使用或者是調(diào)用。插件和平臺是進(jìn)行單向通信的,主要由擴(kuò)展接口來實現(xiàn),插件通過由擴(kuò)展口可以獲得各種資源,包括內(nèi)部數(shù)據(jù)、內(nèi)存分配以及系統(tǒng)句柄。插件的使用和擴(kuò)展接口相類似,只不過它是為平臺提供信息的。
要開發(fā)出一個應(yīng)用程序來支持插件的功能,那就是如何實現(xiàn)主程序和插件的通信。為了達(dá)到這樣的目的,就要有一定的通信標(biāo)準(zhǔn),而可以作為這個標(biāo)準(zhǔn)的就是接口,主程序和插件之間只能通過它來進(jìn)行通信。在開發(fā)軟件的過程中,接口知識功能的定義和規(guī)定形式,它并不包括功能的實現(xiàn)。接口的本質(zhì)是模塊調(diào)用的規(guī)范。
接口的調(diào)用與功能實現(xiàn)不組合在一起,可以有較大的優(yōu)點。雖然因為開發(fā)者的不同對于相同的接口有不同的實現(xiàn)方式,但是在程序當(dāng)中,對于他們的調(diào)用方式都是一樣的。只要能有可以使主程序得以實現(xiàn)的接口,在其他的插件當(dāng)中也可以用相同的方式對主程序的功能進(jìn)行調(diào)用。這樣一來,程序的靈活性便大大增加了。
在主程序之中,插件的安裝以及刪除由插件的管理部分來進(jìn)行,另外,可以將安裝插件的所有信息都保存到合適的地方,比如說可以保存到注冊表里或者是配置文件當(dāng)中。啟動主程序時,插件模塊的加載根據(jù)插件配置信息來進(jìn)行,然后再得到插件所用的輸出函數(shù)或者是指針并且要進(jìn)行保存,在需要的情況下,向主程序增加如菜單或者是工具條按鈕等這些界面接口元素也是可以的。在主程序當(dāng)中,如果點擊到和插件相關(guān)聯(lián)的接口元素,會觸動插件的調(diào)用函數(shù),這時可以利用主函數(shù)中的信息來調(diào)用其中實現(xiàn)的功能。在調(diào)用插件進(jìn)行函數(shù)輸出的時候,主程序中的接口也可以傳遞給插件。
總結(jié):
插件技術(shù)的應(yīng)用,不僅使計算機(jī)的性能有所提高,另外,也為軟件的開發(fā)提供了方向,在這個計算機(jī)時代,插件技術(shù)的應(yīng)用無疑是一大主流技術(shù),對于工作和生活有重大意義。筆者相信,插件技術(shù)將會不斷的向前發(fā)展,在不久的將來,將會有更新的更先進(jìn)的插件技術(shù)出現(xiàn),繼續(xù)為計算機(jī)的發(fā)展服務(wù)。
參考文獻(xiàn)
[1] 陳國棟.試談計算機(jī)軟件中的插件技術(shù)[J].電腦編程技巧與維護(hù), 2010.(16)
[2] 熊英.計算機(jī)軟件中的插件技術(shù)[J].技術(shù)與市場,2011(08)
[3] 李軍利,占媛,劉東良.基于插件技術(shù)的GIS應(yīng)用技能開發(fā)教學(xué)研究[J].軟件導(dǎo)刊,2011(09)