淺析插件技術(shù)在軟件中應(yīng)用_第1頁(yè)
淺析插件技術(shù)在軟件中應(yīng)用_第2頁(yè)
淺析插件技術(shù)在軟件中應(yīng)用_第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、淺析插件技術(shù)在軟件中應(yīng)用】鋼鐵俠插件技術(shù)1、插件技術(shù)設(shè)計(jì)原理插件具有動(dòng)態(tài)鏈接庫(kù)所謂插件動(dòng)態(tài)鏈接庫(kù)就是一種具有特定功能在軟件運(yùn)行中可以執(zhí)行的軟件模塊,由于自身的局限性,本身不能獨(dú)立運(yùn)行在脫離相應(yīng)的軟件時(shí),但是它可以輸出已定義的函數(shù),通過(guò)其他能獨(dú)立運(yùn)行的程序可以調(diào)用自身的內(nèi)部功能。動(dòng)態(tài)鏈接庫(kù)有兩種調(diào)用方式即為靜態(tài)調(diào)用方式和動(dòng)態(tài)調(diào)用方式。插件在軟件中的接口在開發(fā)支持相應(yīng)軟件插件功能的應(yīng)用程序是首要任務(wù)是解決:插件如何在其宿主程序中能夠正確地相互通信和轉(zhuǎn)換。因此、為了能使插件在相對(duì)應(yīng)的宿主程序之間正常德相互通信和轉(zhuǎn)換,在開發(fā)軟件的插件前應(yīng)該先制訂一套相互通信的標(biāo)準(zhǔn),這套事先制訂好的通信標(biāo)準(zhǔn)就是插件與軟

2、件的接口,他們之間只有通過(guò)接口才能相互通信。在軟件開發(fā)過(guò)程中,接口只是一中調(diào)用形式而不是軟件功能是實(shí)現(xiàn)。從實(shí)質(zhì)上講,接口就是軟件模塊的一種調(diào)用規(guī)范,從開發(fā)支持插件功能的編制程序上講,接口制定通常是有軟件一主程序的開發(fā)者開發(fā)編制的。接口功能一般通過(guò)宿主程序?qū)崿F(xiàn),因?yàn)椴寮δ艿膶?shí)現(xiàn)需要調(diào)用宿主程序的某些功能。因此可以說(shuō),宿主程序與插件之間的信息流是雙向的。接口的調(diào)用規(guī)范與其功能實(shí)現(xiàn)相互分離有存在一個(gè)突出的優(yōu)點(diǎn):雖然不同的插件開發(fā)者對(duì)同一個(gè)接口的實(shí)現(xiàn)途徑不同,但是宿主程序在調(diào)用這些插件時(shí)所有調(diào)用方式是完全一樣的。另外不同的插件也可以用同一個(gè)接口來(lái)調(diào)用宿主程序的功能。插件程序結(jié)構(gòu)及運(yùn)行機(jī)制在動(dòng)態(tài)鏈接庫(kù)

3、中實(shí)現(xiàn)插件接口,在宿主程序中運(yùn)用顯式鏈接方式動(dòng)態(tài)加載插件。在宿主程序中,插件的安裝和刪除通常有插件在宿主程序的管理部分控制,把安裝插件的所有信息保存到宿主程序中的一個(gè)適當(dāng)?shù)牡胤健MǔJ潜4娴阶?cè)表或著是一些其他的配置文件中。2、如何實(shí)現(xiàn)插件的可行性方案目前對(duì)于軟件中的插件的實(shí)現(xiàn),主要有動(dòng)態(tài)鏈接庫(kù)(DLL)、COM組件兩種方案,但普遍運(yùn)用在系統(tǒng)中的是動(dòng)態(tài)鏈接庫(kù)(DLL)方案,在動(dòng)態(tài)鏈接庫(kù)(DLL)中,集中實(shí)現(xiàn)插件,用戶只需在Windows系統(tǒng)下編制一些DLL數(shù)據(jù),然后再花一些時(shí)間熟練掌握軟件相關(guān)插件的編程規(guī)則以及調(diào)用規(guī)則,就可對(duì)插件進(jìn)行設(shè)計(jì)和開發(fā),從而實(shí)現(xiàn)插件所具有的特種功能。另外一種便是COM

4、,是一種組件的對(duì)象模型。COM既提供了組件與宿主程序之間進(jìn)行交互的規(guī)范,也為實(shí)現(xiàn)相互交互提供了良好的環(huán)境。COM接口是COM對(duì)象與Windows系統(tǒng)之間的交互通道,但調(diào)用插件的函數(shù)在同類插件間是基本相同的,因而,可以編寫COM插件來(lái)編寫于軟件向匹配的插件。使用COM技術(shù)在編寫插件中有著一個(gè)很大的優(yōu)勢(shì),那就是它更易于使插件與系統(tǒng)間功能的進(jìn)行交互。但主要的問(wèn)題是由于COM技術(shù)及原理的復(fù)雜性,從而使開發(fā)者很難用該項(xiàng)技術(shù)編寫插件來(lái)解決實(shí)際問(wèn)題。3、插件在地震系統(tǒng)中的應(yīng)用地震系統(tǒng)對(duì)插件基本需求當(dāng)今社會(huì),各國(guó)對(duì)地震的關(guān)注越來(lái)越大,因而地震處理系統(tǒng)也越來(lái)越精確,對(duì)插件的需求也越來(lái)越大。地震處理系統(tǒng)主要包括數(shù)

5、據(jù)的輸入、輸出和數(shù)據(jù)處理3個(gè)部分。然而在在數(shù)據(jù)過(guò)程中中,宿主程序首先將插件所需要數(shù)據(jù)和相關(guān)信息通過(guò)接口輸送到插件程序中,然后任務(wù)全部由插件來(lái)完成,最好,插件將處理好的數(shù)據(jù)通過(guò)接口輸送個(gè)宿主程序。地震系統(tǒng)中主程序和插件的工作過(guò)程根據(jù)以上對(duì)對(duì)插件實(shí)現(xiàn)的機(jī)制的分析,可以吧地震處理系統(tǒng)分為主程序和插件。主程序負(fù)責(zé)管理數(shù)據(jù)和加載功能模塊,建立一個(gè)模擬實(shí)際情況的處理流程;插件功能由動(dòng)態(tài)鏈接庫(kù)來(lái)實(shí)現(xiàn)。因此,通過(guò)主程序?qū)Φ卣鹦畔⒌墓芾砗图虞d,來(lái)實(shí)現(xiàn)插件對(duì)地震數(shù)據(jù)的處理。為了能夠更好的相互通訊就需要宿主程序好插件之間制定完善的通信和數(shù)據(jù)傳輸?shù)囊?guī)則和協(xié)議,這就是地震系統(tǒng)和插件之間的接口。值得注意的是,宿主程序和插

6、件都能夠記錄整個(gè)程序運(yùn)行過(guò)程中產(chǎn)生的信息、錯(cuò)誤以及錯(cuò)誤處理,并將其存在特定的文件中,以備用戶對(duì)相關(guān)信息的查詢。地震系統(tǒng)中主程序和插件之間接口設(shè)計(jì)系統(tǒng)主程序和插件之間需要傳遞數(shù)據(jù)和信息,為了能夠高效無(wú)誤的相互輸送所見就必須需要設(shè)計(jì)一個(gè)數(shù)據(jù)結(jié)構(gòu),它能夠?qū)⒉寮枰乃袛?shù)據(jù)和信息收集進(jìn)來(lái)以便插件程序的運(yùn)行。數(shù)據(jù)結(jié)構(gòu)要完全根據(jù)地震信息文件格式進(jìn)行設(shè)計(jì),目的是傳遞插件程序所需要的參數(shù)以及處理后數(shù)據(jù)存儲(chǔ)地址。接口中應(yīng)含有數(shù)據(jù)主要的道頭信息、輸入文件地址、數(shù)據(jù)內(nèi)存地址、畫圖函數(shù)地址,以及其他插件的內(nèi)存地址。是插件能夠通過(guò)接口獲得所需的全部信息及其相應(yīng)的地址,從而使宿主程序和插件之間能夠通過(guò)接口很好的進(jìn)行信息的輸送。4、結(jié)語(yǔ)目前,很多軟件及系統(tǒng)的正常工作都需要相應(yīng)插件,插件給軟件功能的擴(kuò)大起到了不可估量的作用,

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論