《讀書筆記——軟件構(gòu)件與中間件知識(shí)》由會(huì)員分享,可在線閱讀,更多相關(guān)《讀書筆記——軟件構(gòu)件與中間件知識(shí)(6頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),2013/8/27,徐二毛的讀書筆記,#,軟件構(gòu)件與中間件知識(shí),構(gòu)件模型是對(duì)構(gòu)件本質(zhì)特征的抽象描述。構(gòu)件模型的三個(gè)主要流派:,OMG,的,CORBA,SUN,的,EJB,Microsoft,的,DCOM,1,徐二毛的讀書筆記,OMG,(,Object Management Group,,對(duì)象管理集團(tuán))的,CORBA,(,Common Object Request Broker Architecture,,通用對(duì)象請(qǐng)求代理結(jié)構(gòu)),Sun,的,EJB,(,Enterprise Java Bean,),Microso
2、ft,的,DCOM,(,Distributed Component Object Model,,分布式構(gòu)件對(duì)象模型)。,構(gòu)件的定義,構(gòu)件是指語(yǔ)義完整、語(yǔ)法正確和有可重用價(jià)值的單位軟件,是軟件重用過(guò)程中可以明確辨識(shí)的系統(tǒng);結(jié)構(gòu)上,它是語(yǔ)義描述、通訊接口和實(shí)現(xiàn)代碼的復(fù)合體。,構(gòu)件,是具有一定的功能,能夠獨(dú)立工作或能同其它構(gòu)件裝配起來(lái)協(xié)同工作的程序體。,面向?qū)ο蠹夹g(shù)已達(dá)到類級(jí)重用(代碼重用),它以類為封裝的單位。,構(gòu)件將抽象的程度提高到一個(gè)更高層次,它是對(duì)一組類的組合進(jìn)行封裝,代表完成一個(gè)或多個(gè)功能的特定服務(wù),也為用戶提供多個(gè)接口。,構(gòu)件隱藏了具體的實(shí)現(xiàn),只用接口對(duì)外提供服務(wù)。,軟件構(gòu)件與中間件知識(shí)
3、,構(gòu)件有外部接口和內(nèi)部結(jié)構(gòu)組成,外部接口包括:構(gòu)件名、功能描述、參數(shù)化屬性、對(duì)外功能接口、所需的構(gòu)件,構(gòu)件的內(nèi)部結(jié)構(gòu)包括內(nèi)部成員以及內(nèi)部成員之間的關(guān)系,內(nèi)部成員包括具體成員和虛擬成員,成員關(guān)系包括內(nèi)部成員之間的互聯(lián)以及內(nèi)部成員與外部接口之間的互聯(lián),2,徐二毛的讀書筆記,EJB,是開發(fā)和部署多層結(jié)構(gòu)的、分布式的、面向?qū)ο蟮?java,應(yīng)用系統(tǒng)的跨平臺(tái)的構(gòu)件體系結(jié)構(gòu)。,EJB,就是企業(yè)版,Java Bean,,但是它和,Java Bean,區(qū)別很大。,Java Bean,是,Java,語(yǔ)言的一種構(gòu)件模型,其重點(diǎn)是允許開發(fā)人員在開發(fā)環(huán)境中可視化的操作構(gòu)件,可以被集成到任何,Java,程序中,尤其在,
4、Java Applet,和,Application,中得到大量的應(yīng)用;而,EJB,是一種非可視化構(gòu)件,,EJB,完全運(yùn)行于服務(wù)器端,和,Java Bean,不一樣,,EJB,只在網(wǎng)絡(luò)計(jì)算的環(huán)境下才有意義。,軟件構(gòu)件與中間件知識(shí),EJB,有三種類型:,會(huì)話(,Session,),Bean,實(shí)體(,Entity,),Bean,消息驅(qū)動(dòng)(,Message-driven,),Bean,3,徐二毛的讀書筆記,Remote Procedure Call(RPC),是,Windows,操作系統(tǒng)使用的一種遠(yuǎn)程過(guò)程調(diào)用協(xié)議,COM,DCOM,COM+,COM+=COM+DCOM+MTS(Microsoft Tr
5、ansaction Server),COM+,把,COM,組件軟件提升到應(yīng)用層而不再是底層軟件結(jié)構(gòu),DCOM,具有位置獨(dú)立和語(yǔ)言無(wú)關(guān)性,軟件構(gòu)件與中間件知識(shí),CORBA,的特點(diǎn):,1.,引入中間件(,MiddleWare,)作為事務(wù)代理,完成客戶機(jī)(,Client,)向服務(wù)對(duì)象方(,Server,)提出的業(yè)務(wù)請(qǐng)求,2.,實(shí)現(xiàn)客戶與服務(wù)對(duì)象的完全分開,客戶不需要了解服務(wù)對(duì)象的實(shí)現(xiàn)過(guò)程以及具體位置,;3.,提供軟總線機(jī)制,使得在任何環(huán)境下、采用任何語(yǔ)言開發(fā)的軟件只要符合接口規(guī)范的定義,均能夠集成到分布式系統(tǒng)中;,4.CORBA,規(guī)范軟件系統(tǒng)采用面向?qū)ο蟮能浖?shí)現(xiàn)方法開發(fā)應(yīng)用系統(tǒng),實(shí)現(xiàn)對(duì)象內(nèi)部細(xì)節(jié)的
6、完整封裝,保留對(duì)象方法的對(duì)外接口定義。,4,徐二毛的讀書筆記,中間件的定義,在一個(gè)分布式系統(tǒng)中,處于操作系統(tǒng)和應(yīng)用程序之間的軟件,中間件是一種獨(dú)立的系統(tǒng)軟件或服務(wù)程序,分布式應(yīng)用軟件借助這種軟件在不同技術(shù)之間共享資源,中間件位于客戶機(jī)服務(wù)器的操作系統(tǒng)之上,管理計(jì)算資源和網(wǎng)絡(luò)通信,一類軟件而不是一個(gè)軟件,不僅僅互聯(lián)而且互操作,突出特點(diǎn)是網(wǎng)絡(luò)通信功能,中間件的范圍覆蓋:分布式對(duì)象和組件、消息通信、移動(dòng)應(yīng)用等軟件系統(tǒng),軟件構(gòu)件與中間件知識(shí),中間件與操作系統(tǒng)、數(shù)據(jù)庫(kù)管理系統(tǒng)并稱“三套車”,它的優(yōu)越性,10,方面:,縮短應(yīng)用的開發(fā)周期,節(jié)約應(yīng)用的開發(fā)成本,減少系統(tǒng)初期建設(shè)成本,降低應(yīng)用開發(fā)的失敗率,保護(hù)
7、已有的投資,簡(jiǎn)化應(yīng)用集成,減少維護(hù)費(fèi)用,提高應(yīng)用的開發(fā)質(zhì)量,保證技術(shù)進(jìn)步的連續(xù)性,增強(qiáng)應(yīng)用的生命力,1,周期,3,成本,1,投資,降失敗保連續(xù)高質(zhì)量簡(jiǎn)集成增生命,5,徐二毛的讀書筆記,中間件分類:,底層型中間件(主流技術(shù)有:,JVM,CLR(,CLR,常用簡(jiǎn)寫詞語(yǔ),,CLR,是,公共語(yǔ)言運(yùn)行時(shí),,,Common Language Runtime.,和,Java,虛擬機(jī),一樣也是一個(gè)運(yùn)行時(shí)環(huán)境,它負(fù)責(zé)資源管理(,內(nèi)存分配,和垃圾收集),并保證應(yīng)用和底層,操作系統(tǒng),之間必要的分離,是微軟提供的,),ACE,(,ACE,(,Adaptive Communication Environment,)是一
8、個(gè)跨平臺(tái)的用于并發(fā)通信的,C+,框架,),JDBC,ODBC,),通用型中間件(主流技術(shù)有:,COBRA,MOM,COM,J2EE,代表產(chǎn)品有,BEA Weblogic,IBM MQSeries,,,IONA Orbix,),集成型中間件(主流技術(shù):,WorkFlow,、,EAI,代表產(chǎn)品有,BEA Weblogic,IBM Websphere,),軟件構(gòu)件與中間件知識(shí),中間件與操作系統(tǒng)、數(shù)據(jù)庫(kù)管理系統(tǒng)并稱“三套車”,它的優(yōu)越性,10,方面:,縮短應(yīng)用的開發(fā)周期,節(jié)約應(yīng)用的開發(fā)成本,減少系統(tǒng)初期建設(shè)成本,降低應(yīng)用開發(fā)的失敗率,保護(hù)已有的投資,簡(jiǎn)化應(yīng)用集成,減少維護(hù)費(fèi)用,提高應(yīng)用的開發(fā)質(zhì)量,保證技術(shù)進(jìn)步的連續(xù)性,增強(qiáng)應(yīng)用的生命力,1,周期,3,成本,1,投資,降失敗保連續(xù)高質(zhì)量簡(jiǎn)集成增生命,6,徐二毛的讀書筆記,中間件發(fā)展趨勢(shì):,規(guī)范化,構(gòu)件化和松耦合,平臺(tái)化,