自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

放棄使用OSGi方式

開(kāi)發(fā) 開(kāi)發(fā)工具
本文介紹OSGi方式的開(kāi)發(fā),以及放棄使用OSGi方式的原因,包括OSGi目前不成熟等。

OSGi是什么

OSGi是一種服務(wù)運(yùn)行平臺(tái)。通過(guò)實(shí)現(xiàn)能夠提供服務(wù)的符合OSGi規(guī)范的組件,用戶(hù)可以將其組件發(fā)布到OSGi運(yùn)行平臺(tái),供用戶(hù)和其他組件使用。
OSGi 組件提供的服務(wù)具有兩個(gè)層面的含義:系統(tǒng)層面,即一個(gè)組件為其他組件提供服務(wù),這些服務(wù)體現(xiàn)為Java接口的實(shí)現(xiàn);業(yè)務(wù)層面,即一個(gè)組件為外部系統(tǒng)或用戶(hù)提供某種業(yè)務(wù)服務(wù)實(shí)現(xiàn)。

51CTO編輯推薦:OSGi入門(mén)與實(shí)踐全攻略

記錄下傳統(tǒng)和OSGi方式的開(kāi)發(fā)方式的特點(diǎn):

傳統(tǒng)方式的開(kāi)發(fā) :
開(kāi)發(fā)時(shí),要引入整個(gè)依賴(lài)包。整個(gè)系統(tǒng)為一個(gè)工程,里面包含了各個(gè)功能模塊。(假如不使用像maven之類(lèi)的工具管理模塊依賴(lài)的話,在eclipse中開(kāi)發(fā)確實(shí)是個(gè)比較頭疼的問(wèn)題)

OSGi方式的開(kāi)發(fā) :
模塊的依賴(lài),只需要引入使用到的接口。不需要引入整個(gè)bundle。(基于eclipse 的插件開(kāi)發(fā)就是這種類(lèi)型)只需要將bundle部署到服務(wù)器上,即可為系統(tǒng)增加相應(yīng)的模塊支持熱拔插(其實(shí)這個(gè)功能,雖然很好,但是對(duì)于企業(yè)級(jí)開(kāi)發(fā),感覺(jué)意義不大。對(duì)于嵌入式那就另當(dāng)別論了)

OSGi在很大的部分上也是對(duì)模塊的管理,開(kāi)發(fā)都是基于服務(wù)的,我覺(jué)得這樣很好,不過(guò)目前來(lái)說(shuō),我覺(jué)得在企業(yè)級(jí)應(yīng)用里面使用還是為時(shí)過(guò)早。目前使用的maven 加 soa的方式已經(jīng)可應(yīng)對(duì)大多問(wèn)題了。

所以我最終決定目前放棄使用OSGi方式:

考察了OSGi很久,最終決定放棄使用該技術(shù)作為zog平臺(tái)的模塊管理框架。還是使用目前使用得很多的maven+soa進(jìn)行開(kāi)發(fā)。主要有以下考慮:

1.OSGi 目前不成熟。特別在B/S方面,因?yàn)榇蠖鄶?shù)應(yīng)用服務(wù)器都不支持OSGi,這樣讓部署很困難,而且目前已有的解決方案也不好。OSGi是底層的,我認(rèn)為他應(yīng)該在服務(wù)器級(jí)提供實(shí)現(xiàn),或者jvm級(jí)實(shí)現(xiàn)。給應(yīng)用層增加一層OSGi是不明智的。

2.maven管理模塊的依賴(lài)目前還是很成熟了。maven的模塊管理是傳統(tǒng)意義的管理,即把包作為jar包導(dǎo)入引用工程。由于maven強(qiáng)大的包管理功能,使得包依賴(lài)問(wèn)題得到了解決。光從開(kāi)發(fā)這點(diǎn)上OSGi沒(méi)有明顯的優(yōu)勢(shì),因?yàn)樵诨贠SGi開(kāi)發(fā)中,要引用其他包,必須在eclipse中把這些作為一個(gè)個(gè)工程打開(kāi),其他工程才能引用它們(想想假如你有100個(gè)bundle的情況,就可想而知?。?。

3.假如光把OSGi作為zog平臺(tái)級(jí)開(kāi)發(fā)使用,而在開(kāi)發(fā)具體項(xiàng)目時(shí)采用普通開(kāi)發(fā)模式,咋樣呢?依據(jù)我目前掌握的OSGi知識(shí)來(lái)看,我不贊同這樣。首先問(wèn)題的原因也如同剛剛2所提到的,同時(shí)也考慮到zog平臺(tái)打包的問(wèn)題。你想想,bundle是按照功能來(lái)創(chuàng)建的,為了管理這些小東西,也會(huì)打開(kāi)很多的模塊工程。很麻煩。

4.以后等OSGi成熟了,轉(zhuǎn)換過(guò)程也很簡(jiǎn)單。不過(guò)前提是要對(duì)架構(gòu)設(shè)計(jì)好才行。

【編輯推薦】

  1. OSGi與JSF結(jié)合開(kāi)發(fā)
  2. Spring OSGi的整合
  3. 簡(jiǎn)單介紹Spring osgi
  4. 基于OSGi的動(dòng)態(tài)化系統(tǒng)搭建
  5. OSGi和SCA間的關(guān)系淺析
責(zé)任編輯:佚名 來(lái)源: BlogJava
相關(guān)推薦

2009-09-28 13:32:39

OSGi入門(mén)

2009-10-09 13:42:56

Spring DataSpring DM

2009-06-01 11:43:22

OSGiHibernateOpenCore

2009-06-01 11:12:34

OSGi規(guī)范架構(gòu)體系結(jié)構(gòu)

2009-09-28 14:49:08

Spring DMOSGi服務(wù)

2012-06-25 11:47:14

ibmdw

2024-02-26 08:00:00

MergeRebase開(kāi)發(fā)

2011-06-08 10:30:08

MongoDB

2009-06-18 15:24:08

Spring OSGi

2009-06-01 11:09:16

OSGI實(shí)戰(zhàn)進(jìn)階

2009-06-01 11:20:21

OSGi服務(wù)規(guī)范非贏利機(jī)構(gòu)

2011-11-30 09:45:14

Ubuntu OneCouchDB

2020-07-07 09:19:01

LombokJava IDE

2009-06-01 10:28:03

SpringOSGi整合

2009-09-16 17:15:19

OSGi Bundle

2009-06-23 17:54:41

OSGi與JSF

2011-05-24 09:16:47

OSGiEclipse

2009-07-09 09:18:50

Spring Tool

2009-09-29 09:16:23

啟動(dòng)bundleOSGi

2009-09-29 14:20:05

OSGiContactDAO
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)