模式,顧名思義,就是“?!焙?/span> “式”的組合詞。廣義上的“模式化”是一種原型方法prototype,它用“模”給出標(biāo)準(zhǔn)/要求,用“式”達(dá)成目標(biāo)/目的。
- 模Mode:表示事物的(已知)特征信息。也就是說(shuō),“?!笔菍?duì)事物不變性、確定性,如物理結(jié)構(gòu)、內(nèi)容構(gòu)成等的概念化,具體形式 是“型Model” ;
- 式Style: 表示一個(gè)可以變化的特性或者會(huì)引起變化的能力?!笆健笔菍?duì)事物變化性、未知性的概念化,“式”的具體形式包括“問(wèn)題Problem”、“功能Functiom”和“狀態(tài)Status”等。
對(duì)“?!倍?,“式”就是結(jié)構(gòu)方法(得到結(jié)構(gòu)的方法)和結(jié)構(gòu)維持(結(jié)構(gòu)維持的方法),而對(duì)“式”來(lái)說(shuō),“模”給出了“式”的作用范圍。
所以,模式化是解決具體問(wèn)題的原型法方案,也就是說(shuō),Pattern“模式”是解決方案Scheme 原型的基本方法,它為各種不同原型級(jí)別的方案提供了基礎(chǔ),這些方案按照對(duì)實(shí)際應(yīng)用系統(tǒng)的抽象程度從高到低排列下來(lái)分別是: Stylization“程式化->通過(guò)制訂法規(guī)”、Configuration“組態(tài)化->通過(guò)確定配置”、Information“信息化”-> 基于靜態(tài)特征(概念性/功能性)的分體Branch、Case情景化”-> 基于動(dòng)態(tài)特征(事物間的相互轉(zhuǎn)換/相互連接等)的變體Variant、和Coding。
應(yīng)用系統(tǒng)的葉子級(jí)原型方案是“分體”和“變體”, 它們分別是應(yīng)用程序中Element和ModelElement的結(jié)構(gòu)原型--以它為頂點(diǎn)的層次結(jié)構(gòu)。Element和ModelElement表示了任何Object(事物,也是編程中的對(duì)象)所具有的靜態(tài)性/動(dòng)態(tài)性這兩種特性。
對(duì)一般的應(yīng)用系統(tǒng)(或者叫“信息系統(tǒng)”,區(qū)別于通用信息系統(tǒng)原型)編程來(lái)說(shuō),面向?qū)ο蟮木幊谭椒?/span>(OOP)就是將上面所說(shuō)的,從程式化直到Coding的一個(gè)混搭,而面向切面的編程方法(AOP)則還額外混搭了認(rèn)知范圍以?xún)?nèi)的不同側(cè)面上的切點(diǎn)模式方案。
這里“OOP”中的對(duì)象,指的是組件對(duì)象模型(Component Object Model, COM)對(duì)象(為示區(qū)別,后面稱(chēng)為“COM對(duì)象”),而更廣義的對(duì)象Object,實(shí)際上是描述COM對(duì)象的特征和目標(biāo)的對(duì)象,也就是前面所說(shuō)的“?!钡木唧w化形式-“型”。
對(duì)于一個(gè)通用信息系統(tǒng)來(lái)說(shuō),有三種“型”:鍵值型(KV)、關(guān)系型(Renatinal)和COM型。應(yīng)用系統(tǒng)就是一組COM對(duì)象集,設(shè)計(jì)中使用PCOM( 可移植公共對(duì)象Portable Common Object Model) 作為COM對(duì)象的原型,即:設(shè)計(jì)中的最高級(jí)別的“型Model”是PCOM。
可移植公共對(duì)象Portable Common Object
COM對(duì)象是具有封裝性、多態(tài)性和繼承性三大特性的任何COM對(duì)象的“型”。這三種特性,分別用Box、Preserver和Lineage表示它們的基類(lèi),并需要提供基本的實(shí)現(xiàn)。
上一篇日志“信息系統(tǒng)應(yīng)用現(xiàn)場(chǎng)的維持問(wèn)題”談到的,就是COM對(duì)象的“多態(tài)性”在應(yīng)用現(xiàn)場(chǎng)的具體問(wèn)題。 設(shè)計(jì)方案中,需要基于以上的模式化的結(jié)構(gòu)體系來(lái)構(gòu)建一個(gè)通用方案。
(未完)
|