原創(chuàng)|其它|編輯:郝浩|2012-12-27 14:57:28.000|閱讀 287 次
概述:隨著軟件應(yīng)用與領(lǐng)域業(yè)務(wù)結(jié)合日益緊密,業(yè)務(wù)軟件開發(fā)對(duì)可視化編程依賴性亦愈發(fā)突出,傳統(tǒng) IDE 的設(shè)計(jì)理念使得基于 IF/Else 條件邏輯的支持不夠完善,隨需而變的客戶要求使得該問題亦日益嚴(yán)峻。本文從傳統(tǒng) IDE 難以支持條件表達(dá)邏輯元素角度出發(fā),提出建立支持 VIE(Visual IF/Else) 的獨(dú)立應(yīng)用框架的想法,以及重用已有的編程元素來表達(dá)新的條件邏輯的思路;提出了分層框架的體系結(jié)構(gòu),以及指導(dǎo)實(shí)際設(shè)計(jì)開發(fā)的概念模型和實(shí)現(xiàn)模型;并開發(fā)了概念模型框架和基于 InstallShield 的實(shí)現(xiàn)模型,以及用于演示的 Demo。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
隨著軟件應(yīng)用與領(lǐng)域業(yè)務(wù)結(jié)合日益緊密,業(yè)務(wù)軟件開發(fā)對(duì)可視化編程依賴性亦愈發(fā)突出,傳統(tǒng) IDE 的設(shè)計(jì)理念使得基于 IF/Else 條件邏輯的支持不夠完善,隨需而變的客戶要求使得該問題亦日益嚴(yán)峻。本文從傳統(tǒng) IDE 難以支持條件表達(dá)邏輯元素角度出發(fā),提出建立支持 VIE(Visual IF/Else) 的獨(dú)立應(yīng)用框架的想法,以及重用已有的編程元素來表達(dá)新的條件邏輯的思路;提出了分層框架的體系結(jié)構(gòu),以及指導(dǎo)實(shí)際設(shè)計(jì)開發(fā)的概念模型和實(shí)現(xiàn)模型;并開發(fā)了概念模型框架和基于 InstallShield 的實(shí)現(xiàn)模型,以及用于演示的 Demo。
背景
可視化編程發(fā)展
隨著計(jì)算機(jī)快速應(yīng)用與發(fā)展,計(jì)算機(jī)軟件迅速普及到各行各業(yè)的各個(gè)領(lǐng)域,快速開發(fā)出滿足客戶需求的軟件越來越迫切,然而隨著軟件應(yīng)用逐步深入到行業(yè)業(yè)務(wù)的深層,隨需而變的客戶要求也變得越來越難以滿足。古人曰:“工欲善其事,必先利其器”,基于傳統(tǒng)的文本編程越來越不能應(yīng)對(duì)這些挑戰(zhàn)。功能強(qiáng)大的 IDE( 集成開發(fā)環(huán)境 ) 應(yīng)運(yùn)而生,強(qiáng)大的 IDE 提供了高效的可視化編程環(huán)境,不同的應(yīng)用領(lǐng)域可視化編程環(huán)境提供的可視化程度也有所不同。有的提供了界面構(gòu)造的可視化,而有的甚至提供了程序流控制的可視化編程,極大地增強(qiáng)了在對(duì)應(yīng)的應(yīng)用領(lǐng)域的業(yè)務(wù)開發(fā)能力,提高了應(yīng)用領(lǐng)域信息化程度。
可視化 IF 條件邏輯編程需求
傳統(tǒng)的可視化 IDE 的設(shè)計(jì)理念多為編程元素可視化,即將編程中的元素轉(zhuǎn)化為多個(gè)小的可視化對(duì)象,然后開發(fā)支持可視化編輯器來編輯這些編程元素。在很多成熟的可視化編程 IDE 中,對(duì)于 IF/Else 表達(dá)邏輯采取了一種避重就輕的態(tài)度,因?yàn)?IF/Else 為程序流條件控制,并非直接的可視化編程元素,因此很多成熟的 IDE 都支持基于可視化元素的 IF 條件表達(dá),而不能直接表達(dá) IF/Else 邏輯。這種表達(dá)的不直接性造成了對(duì)于 IF/Else 條件邏輯 IDE 表現(xiàn)手法和傳統(tǒng)程序員程序開發(fā)習(xí)慣的大相徑庭,此外這種不直接性造成了可讀性差、復(fù)用性差、維護(hù)困難、學(xué)習(xí)困難、存在潛在風(fēng)險(xiǎn)等諸多問題,這些問題在實(shí)際的開發(fā)應(yīng)用中極為明顯。隨著成熟 IDE 大量投入使用,在實(shí)際應(yīng)用中這種低效率的可視化矛盾愈發(fā)突出,使 IDE 實(shí)現(xiàn)對(duì)于這種 IF/Else 條件邏輯表達(dá)的可視化支持也變得日益迫切。
對(duì)于已經(jīng)較為成熟的 IDE,如果直接修改和增加會(huì)帶來較大的風(fēng)險(xiǎn)和難度,基于這幾點(diǎn)考慮,需要尋求一種間接的方式來獲得支持,使得成熟的 IDE 也能夠較為容易的支持可視化的 IF/Else 邏輯表達(dá)的開發(fā)。根據(jù)已有的開發(fā)經(jīng)驗(yàn)和設(shè)計(jì)理念,采用一個(gè)獨(dú)立支持 VIE(Visual IF/Else) 編程的框架和已有的 IDE 相接合使用,可以降低開發(fā)難度和風(fēng)險(xiǎn),提高開發(fā)效率。
VIE 解決方案
面臨的問題
本文認(rèn)為對(duì)于一個(gè)可視化框架而言,一般需要解決兩方面的問題,一方面在可視化方面,要提供一個(gè)足夠滿足需要的靈活的編輯器,進(jìn)行高效便捷的展現(xiàn)和編輯可視化元素以及可視化元素之間的關(guān)系;另一方面要解決可視化編輯器背后的邏輯關(guān)系的對(duì)應(yīng),關(guān)于邏輯關(guān)系的一致性對(duì)應(yīng)問題上,包括編輯器運(yùn)行時(shí)的對(duì)應(yīng)和系統(tǒng)編輯后的對(duì)應(yīng)。對(duì)于編輯器運(yùn)行時(shí)的對(duì)應(yīng)問題,即在用戶可視化的改變編輯器中圖形元素的時(shí)候,這些操作包括拖拽、雙擊、移動(dòng)、拉伸、連接等等,要靈活的響應(yīng)這種處理邏輯和處理方式,保證對(duì)應(yīng)的邏輯關(guān)系發(fā)生相應(yīng)的改變。對(duì)于系統(tǒng)編輯后的對(duì)應(yīng)問題,即要解決在 IDE 關(guān)閉后的邏輯關(guān)系保存,IDE 啟動(dòng)后的邏輯關(guān)系讀取、生成程序的成功構(gòu)建和生成程序按照設(shè)計(jì)的邏輯成功運(yùn)行。
解決方案
本文論述的通用可視化 IF 條件表達(dá)語句編程框架需要和獨(dú)立的 IDE 結(jié)合使用,因此在研究框架設(shè)計(jì)解決方案的時(shí)候必須以此為前提,面對(duì)上文提及的兩方面問題,一般認(rèn)為有兩種手段。其一為,改變 IDE 系統(tǒng)內(nèi)核,從而增加新的可視化元素類型和新的可視化元素類型后的新的邏輯元素,這種解決方案要在熟悉 IDE 系統(tǒng)內(nèi)核的基礎(chǔ)上,修改 IDE 代碼來支持新元素類型的添加、編輯、刪除、保存和讀取工作,并能使得生成程序在生成和運(yùn)行時(shí)刻能按照設(shè)計(jì)邏輯進(jìn)行運(yùn)行。
另一種解決方案是充分利用已有的可視化元素和元素邏輯,構(gòu)造新的邏輯結(jié)構(gòu)。這種思想基于重用已有邏輯的思想,避免了因?yàn)槿胄略兀瑢?dǎo)致 IDE 系統(tǒng)內(nèi)核的大量新的邏輯的修改。除了降低了這種風(fēng)險(xiǎn),使用這種重用的思想可以有效地構(gòu)建一個(gè)通用的框架予以支持,并且可以重用框架的內(nèi)容,降低開發(fā)難度提高開發(fā)效率;另一方面,充分利用框架可以復(fù)用很多通用框架的元素。
對(duì)比兩種解決方案,本文采用第二種解決方案建立一個(gè)通用條件語句處理框架,依賴于該框架設(shè)計(jì)出整體的架構(gòu)。通用框架叫做 VIE(Visual IF Else) 。
通用 VIE 框架設(shè)計(jì)
結(jié)構(gòu)層次設(shè)計(jì)
根據(jù)分析可知,通用 VIE 框架一方面要提供核心處理邏輯的能力,并提供可視化編輯器,另一方面要提供良好的接口,可以快速的與其他系統(tǒng)相兼容。如圖 1 所示,VIE 框架結(jié)構(gòu)分為三個(gè)層次,核心層(VIE Core),橋接層(Bridge)和環(huán)境層(Environment)。
圖 1. 結(jié)構(gòu)層次設(shè)計(jì)
核心層為框架的主體部分,框架的復(fù)用和控制在本層完成。在 IDE 啟動(dòng)時(shí)刻,核心層需要調(diào)用橋?qū)荧@得相應(yīng)的表示邏輯;在編輯時(shí)刻,核心層解決可視化編輯器所提供的顯示編輯等功能,并提供對(duì)于編輯的邏輯的表示,并調(diào)用或者通知橋?qū)油瓿珊途唧w的環(huán)境相關(guān)操作;在運(yùn)行時(shí)刻,核心層上要調(diào)用橋?qū)荧@得核心的表示邏輯,并把這種邏輯按照一定的方式進(jìn)行轉(zhuǎn)換調(diào)用,從而保證按照設(shè)計(jì)執(zhí)行相應(yīng)的邏輯。
橋?qū)訛榭蚣芎途唧w的 IDE 環(huán)境對(duì)接的部分,因此完成 VIE 框架與其他 IDE 系統(tǒng)對(duì)接需要實(shí)現(xiàn)該層。在 IDE 啟動(dòng)時(shí)刻,橋?qū)右瓿蓴?shù)據(jù)的讀取,并把數(shù)據(jù)轉(zhuǎn)化為新的邏輯數(shù)據(jù),提供給核心層調(diào)用;在編輯時(shí)刻,橋?qū)邮盏胶诵膶拥耐ㄖ蟀严鄳?yīng)的邏輯轉(zhuǎn)化為相應(yīng)的 IDE 識(shí)別的邏輯元素進(jìn)行保存;在 IDE 關(guān)閉時(shí)刻,橋?qū)右瓿蓪⑿碌倪壿嬙剞D(zhuǎn)化為 IDE 識(shí)別的元素按照 IDE 系統(tǒng)的方式進(jìn)行保存;在程序生成時(shí)刻,橋?qū)右瓿缮少Y源的準(zhǔn)備和識(shí)別,并打包生成程序;在運(yùn)行時(shí)刻,橋?qū)诱{(diào)用核心層來完成設(shè)計(jì)邏輯的運(yùn)行。
環(huán)境層為一個(gè)虛擬層,不屬于框架內(nèi)容,是具體的 IDE 。
核心層為系統(tǒng)運(yùn)行的抽象層,為框架的主體部分,VIE 框架在 IDE 編輯和運(yùn)行時(shí)都運(yùn)行于抽象層;橋?qū)邮浅橄髮雍瓦\(yùn)行環(huán)境的接口層,在運(yùn)行時(shí)刻和編譯時(shí)刻等,橋?qū)咏邮芎诵膶拥耐ㄖ螅诃h(huán)境層運(yùn)行,執(zhí)行相應(yīng)的操作。
架構(gòu)設(shè)計(jì)
VIE 的分層架構(gòu)模型為圖 2 所示,整個(gè)分層架構(gòu)模型包括概念模型和實(shí)現(xiàn)模型兩個(gè)部分。概念模型是對(duì)實(shí)現(xiàn)模型的抽象,實(shí)現(xiàn)模型是對(duì)概念模型的實(shí)現(xiàn)具象。概念模型主要為了滿足 VIE 邏輯表達(dá)需要,因此概念模型屬于抽象層的邏輯實(shí)現(xiàn),不依賴于具體的 IDE,更具通用性。
實(shí)現(xiàn)模型是根據(jù)需要對(duì)于某個(gè)特定 IDE 予以概念模型的實(shí)現(xiàn),實(shí)現(xiàn)模型充分利用 IDE 中對(duì)于已存在的可視化元素的支持來描述新的邏輯元素,這種表達(dá)和描述帶有機(jī)械性的直接轉(zhuǎn)換和翻譯,對(duì)于具體的邏輯含義則由概念模型來進(jìn)行描述和表達(dá),因此實(shí)現(xiàn)模型提供基于具體 IDE 的有效闡述,從而提供給概念層進(jìn)行調(diào)用轉(zhuǎn)換。
圖 2. 多層體系架構(gòu)設(shè)計(jì)
概念層模型設(shè)計(jì)包括基本 VIE 面向?qū)ο笤O(shè)計(jì)、可視化編輯器設(shè)計(jì)、IDE 啟動(dòng)后的編輯器初始化設(shè)計(jì)、在 IDE 中的編輯操作設(shè)計(jì)、運(yùn)行期的邏輯流處理設(shè)計(jì)以及在這些過程中與橋?qū)咏换サ裙δ茉O(shè)計(jì),對(duì)于概念層模型設(shè)計(jì)的品質(zhì)屬性包括復(fù)用性、維護(hù)性等設(shè)計(jì)要求。
基本 VIE 表達(dá)的面向?qū)ο笤O(shè)計(jì)
在 IF 條件語句中,任何一個(gè)表達(dá) True/False 邏輯的狀態(tài)的類為 VIECondition 的實(shí)現(xiàn),多個(gè) VIECondition 形成一個(gè)表達(dá)邏輯的集合,集合通過“與”,“或”來表達(dá)具體的邏輯狀態(tài)。
任何獨(dú)立執(zhí)行的語句操作為一個(gè)獨(dú)立的 VIEAction,在 IF 條件語句中,包括兩個(gè)操作集合,即 True 條件下的操作集合和 False 條件下的操作集合,如果狀態(tài)集合表達(dá)的邏輯狀態(tài)為 True 則執(zhí)行 True 操作集合,否則執(zhí)行 False 操作集合。
根據(jù)以上論述,在 VIE 邏輯表達(dá)中,VIECondition 與 VIEAction 關(guān)系如下所示:
VIEConditionSets = {VIECondition0, VIECondition1, … , VIEConditionM, … , VIEConditionN};FalseActionSets = {VIEAction0, VIEAction1, … , VIEActionM, … , VIEActionN};TrueActionSets = {VIEAction0, VIEAction1, … , VIEActionM, … , VIEActionN};
VIEStatement 為一個(gè)操作集合,可以被有效的使用。
VIE 框架中處于核心地位的類為 VIECore,該類處理和管理?xiàng)l件狀態(tài)集合,True 操作集合和 False 操作集合,并負(fù)責(zé)運(yùn)行時(shí)刻邏輯關(guān)系的執(zhí)行處理。
根據(jù)以上設(shè)計(jì)思路和研究結(jié)果,VIE 表達(dá)的面向?qū)ο笤O(shè)計(jì)如圖 3 所示。考慮到設(shè)計(jì)的品質(zhì)屬性,設(shè)計(jì)采用了 Superivsor-Agent[1] 模式予以實(shí)現(xiàn),保證了 VIEStatement 對(duì)于 VIECore 不存在依賴,同時(shí)保證了 VIECore 對(duì)于 VIEStatement 的控制,增強(qiáng)了 VIEStatement 的復(fù)用性和框架內(nèi)部之間狀態(tài)的可維護(hù)性。對(duì)于 VIECore 與橋接層及其他 VIE 框架外層之間的關(guān)系,采用觀察者模式[2] 予以實(shí)現(xiàn),增強(qiáng)了核心框架的穩(wěn)定性同時(shí),保證了對(duì)于外部訪問的靈活性。
圖 3. 基本 VIE 表達(dá)的面向?qū)ο笤O(shè)計(jì)
VIE 獨(dú)立可視化編輯器設(shè)計(jì)
獨(dú)立編輯器設(shè)計(jì),要獨(dú)立于具體的 IDE 開發(fā)環(huán)境,只依賴于框架的核心部分。另外 IDE 提供的編輯主要為對(duì)于 VIEAction、VIECondition、VIECore 和 VIEStatement 的編輯。編輯過程中與 VIE 框架之外部分的交互交由框架完成,從而保證了編輯器獨(dú)立于具體的 IDE 和框架外部內(nèi)容,保證了代碼的穩(wěn)定性。可視化編輯器的設(shè)計(jì)采用 JAVABean 方式予以實(shí)現(xiàn),保證了編輯器的通用性和規(guī)范性,可以更好的和其他 IDE 相融和。可視化編輯器和 VIE 框架之間的關(guān)系如圖 4 所示。
圖 4. VIE 編輯器設(shè)計(jì)
VIE 橋?qū)釉O(shè)計(jì)
VIECoreImp 為橋?qū)?與 IDE 交互的核心接口,該接口和 VIECore 之間使用橋接模式 [2] 的組合方式進(jìn)行組合,解耦核心層的 VIECore 與橋?qū)拥?VIECoreImp 之間關(guān)系,使得兩者可以自由變化,提高了 VIE 框架設(shè)計(jì)的靈活性和獨(dú)立性。
由于 VIECore 為 VIE 框架的核心類,VIE 框架的所有類都通過這個(gè)類進(jìn)行調(diào)用橋接的實(shí)現(xiàn),理論上橋接層也必須通過 VIECore 才能與核心層進(jìn)行交互,針對(duì)這些特性,VIECore 應(yīng)該設(shè)計(jì)為門面模式 [2] 。此外,基于 VIECoreImp 與 VIECore 之間利用橋接模式進(jìn)行組合,VIECore 如果采用類來實(shí)現(xiàn)的話會(huì)存在靈活性差的缺點(diǎn),為退化的橋接模式。考慮到核心層可能需要優(yōu)化其核心功能,改善其性能等方面品質(zhì),退化模式不利于擴(kuò)展,因此 VIECore 的設(shè)計(jì)還應(yīng)該采用單例模式 [2] 和工廠模式 [2] 的結(jié)合體,可以創(chuàng)建出多個(gè)實(shí)例,并保證了靈活性,必要的情形下,還可以設(shè)計(jì)從外部文件讀取擴(kuò)展類,更高效的提高系統(tǒng)設(shè)計(jì)的靈活性。
在編輯時(shí)刻,ConditionPanel 和 StatementPanel 需要讀取系統(tǒng)的默認(rèn)數(shù)據(jù)元素類型和系統(tǒng)配置參數(shù),VIEUI 提供了讀取這些參數(shù)的接口。 ConditionPanel 和 StatementPanel 獨(dú)立于 VIEUI,保證了可視化編輯器獨(dú)立于具體的橋階層和 IDE 系統(tǒng)。
VIECoreImp 為橋接層的核心,是 VIECore 的具體 IDE 的實(shí)現(xiàn),對(duì)于橋階層的數(shù)據(jù)可以有效地控制和調(diào)用。因此 VIECoreImp 與 VIEUI 之間采用工廠模式 [2] 進(jìn)行設(shè)計(jì),VIECoreImp 實(shí)現(xiàn)對(duì)于 VIEUI 的創(chuàng)建。 ConditionPanel 和 StatementPanel 對(duì) VIEUI 的調(diào)用來自于 VIECoreCustomerizer,VIECoreCustomerizer 通過門面模式的 VIECore 調(diào)用橋?qū)拥暮诵膶?shí)現(xiàn) VIECoreImp,VIECoreImp 創(chuàng)建出 VIEUI 的實(shí)例。
此外對(duì)于 VIEAction 和 VIECondition,在橋?qū)佣夹枰枰詫?shí)現(xiàn),ConcreteVIEAction 和 ConcreteVIECondition 。 ConcreteVIECoreImp 類完成對(duì) ConcreteVIEAction 和 ConcreteVIECondition 調(diào)用和創(chuàng)建。
VIE 框架整體設(shè)計(jì)如圖 5 所示。
圖 5. VIE 框架整體設(shè)計(jì)
如圖 6 所示為 VIE 框架的概念模型架構(gòu),VIE 框架的概念模型架構(gòu)設(shè)計(jì)核心目標(biāo)是在滿足準(zhǔn)確表達(dá) VIE 表達(dá)式結(jié)果的前提下,建立一個(gè)獨(dú)立于任何 IDE 的架構(gòu)。因此,VIE 概念模型架構(gòu)的設(shè)計(jì)集中于 VIE 關(guān)系的具體表達(dá)和跟橋?qū)咏换サ慕怦钤O(shè)計(jì)上,使得 VIE 框架一方面獨(dú)立于任何 IDE,另一方面又可以直接有效的和具體的 IDE 靈活交互。
圖 6. 概念模型架構(gòu)設(shè)計(jì)
基于 ISMP 的框架應(yīng)用實(shí)現(xiàn)
ISMP 簡介
ISMP(InstallShield MultiPlatform) 是一款強(qiáng)大的跨操作系統(tǒng)平臺(tái)向?qū)脚_(tái),提供包括產(chǎn)品安裝、系統(tǒng)環(huán)境更新、系統(tǒng)配置等多個(gè)應(yīng)用領(lǐng)域,應(yīng)用領(lǐng)域廣,提供的開發(fā)工具包功能強(qiáng)大,提供了多種多樣的 API 和類包,并且 ISMP 自身附帶一個(gè)功能豐富的可視化 IDE,對(duì)于一些簡單的應(yīng)用,甚至于不用開發(fā)代碼即可完成,全球有無數(shù)應(yīng)用程序應(yīng)用 ISMP 作為向?qū)О惭b、部署、配置。
基于 ISMP 的 VIE 實(shí)現(xiàn)層模型設(shè)計(jì)
實(shí)現(xiàn)模型的實(shí)現(xiàn)主要集中于橋?qū)拥膶?shí)現(xiàn),ISMPVIECoreImp 的設(shè)計(jì)采用接口適配器模式 [2] 來實(shí)現(xiàn),ISMPVIECoreImp 一方面實(shí)現(xiàn) VIECoreImp 接口,準(zhǔn)備好上層的調(diào)用;另一方面繼承自 ISMP 的 WizardAction 實(shí)現(xiàn)具體的和 IDE 有關(guān)的過程實(shí)現(xiàn)。ISMPVIECoreImp 是實(shí)現(xiàn)模型的關(guān)鍵部分,要完成在 IDE 系統(tǒng)啟動(dòng)、編輯器編輯、生成程序生成、生成程序運(yùn)行等時(shí)刻 VIE 框架和 ISMP 之間交互的橋接。
對(duì)于 ISMPVIECondition 和 ISMPVIEAction 的實(shí)現(xiàn)采用對(duì)象適配器模式 [2] 來實(shí)現(xiàn)。以 ISMPVIECondition 的實(shí)現(xiàn)為例,通過首先實(shí)現(xiàn) VIECondition 接口,同時(shí)引用 WizardBeanCondition 類。這樣滿足面向?qū)ο蟮某踔裕环矫妫WC了可以復(fù)用 ISMP 中的 WizardBeanCondition 和 WizardAction;另一方面,保證了重用的 WizardBeanCondition 和 WizardAction 可以和 VIE 概念模型設(shè)計(jì)無縫相融和,不至于修改 VIE 框架概念層內(nèi)核。
圖 7. ISMP 實(shí)現(xiàn)模型
基于 ISMP 實(shí)現(xiàn)模型的 VIE 框架
使用 ISMP 5.0 和 Eclipse 3.2 按照 ISMP 的實(shí)現(xiàn)模型開發(fā) VIE 框架,充分重用 WizardBeanCondition/WizardAction/WizardSequence 等已有框架編程元素來表示 VIE 框架中描述的新元素類型,按照 ISMP 實(shí)現(xiàn)模型的設(shè)計(jì),ISMP 實(shí)現(xiàn)模型的核心實(shí)現(xiàn) ISMPVIECoreImp 采用接口適配器模式實(shí)現(xiàn),因此對(duì)于 ISMP 的 IDE 而言 ISMPVIECoreImp 為 WizardAction,使用方式和普通 WizardAction 一樣。
為了在 ISMP 中使用 VIE 框架,需要把 ISMP 實(shí)現(xiàn)模型的 VIE 框架所有的進(jìn)行程序編譯,然后放到 %ISMP_Root%/lib 中,最后在 IDE 中注冊(cè) ISMPVIECoreImp,保證在 IDE 添加 WizardAction 時(shí)候的正常使用。
在 ISMP 中的 installer 頁中,點(diǎn)擊“ Insert …”按鈕,添加 WizardBean,在彈出對(duì)話框中選擇 ISMPVIECoreImp,點(diǎn)擊 OK 完成添加,然后在 installer 頁左邊的樹目錄中選中該 Action,則在構(gòu)建的可視化編輯器界面
結(jié)論
本文探討了基于可視化通用框架的設(shè)計(jì)和實(shí)施的思路與方法論,根據(jù)需要可以拓展到其它可視化編程的領(lǐng)域,因此對(duì)于可視化通用框架的設(shè)計(jì)和編程思路不應(yīng)該局限于 VIE 的實(shí)現(xiàn)模型開發(fā)和編程應(yīng)用。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn
文章轉(zhuǎn)載自:網(wǎng)絡(luò)轉(zhuǎn)載