Jeff McAffer談OSGi和Eclipse
OSGi組件標(biāo)準(zhǔn)是目前Java開發(fā)最新標(biāo)準(zhǔn)之一,但是它早就成熟了。對于ISV來說,OSGi可能是有效的工具,能夠促進(jìn)更加模塊化的組件轉(zhuǎn)換。對于一些主流的開發(fā)者來說,OSGi會是福音還是詛咒呢?如果對其能力胡亂操作的話就是詛咒了。
在今年的EclipseCon上,為了更好地理解OSGi路線,SearchSOA.com編輯Jack Vaughan同EclipseSource首席技術(shù)官Jeff McAffer進(jìn)行了對話。McAffer領(lǐng)導(dǎo)Eclipse Equinox OSGi、RCP和Orbit團(tuán)隊(duì)。他是Eclipse平臺的架構(gòu)師之一,同時(shí)也是《Equinox and OSGi》一書的合著者,該書最近由Addison-Wesley出版社出版。我們的對話始于resolver hook、低水平的軟件,這些軟件本質(zhì)上能夠促成更好的高水平編程框架,但是卻可能創(chuàng)造出“不可解析”狀態(tài)。
SearchSOA:我聽到有關(guān)專家探討resolver hook,他們說在OSGi中有新東西,但是卻觸及不到。你怎么看待呢?
Jeff McAffer:我可能就這式樣說的專家之一吧,觸及不到,但是實(shí)際的意思是基礎(chǔ)技術(shù)中的新事物,正在使OSGi中的附加可配置型和靈活性成為可能。但是這樣說更多的是從系統(tǒng)層面,并不是應(yīng)用層面。
Resolver hook落實(shí)到位能夠解決具體技術(shù)問題,也就是大家希望在OSGi之上創(chuàng)建新框架。但是,實(shí)際上,普通應(yīng)用程序員不需要那個(gè)層面的靈活性。他們所需要的是更高的粒度,他們可以在更加抽象的層面上工作。現(xiàn)實(shí)中,你畢竟不希望程序員編程(OSGi),因?yàn)檫@實(shí)際上相當(dāng)?shù)湍?。它完全適用于系統(tǒng)層得編程,不是應(yīng)用層編程。因此,你所看到的這些新事物,很酷很強(qiáng)大,實(shí)際使用是為了幫助正在進(jìn)行應(yīng)用框架編程的人們,不是系統(tǒng)層的東西。所以這才是你實(shí)際看到的。
SearchSOA:你是否看到基于OSGi系統(tǒng)進(jìn)駐到企業(yè)中呢?
McAffer:這很令人興奮。人們正在考慮利用OSGi,而且OSGi正在接近企業(yè)。我們看到OSGi出現(xiàn)在所有主要的應(yīng)用服務(wù)器中,大家在嵌入式和現(xiàn)有應(yīng)用服務(wù)器中使用OSGi。應(yīng)用服務(wù)器本身中OSGi也是可行的。
像Eclipse中的Virgo項(xiàng)目,本質(zhì)上建于先前存在的SpringSource 的DM服務(wù)器技術(shù)之上。我們看到越來越多的人們對OSGi感興趣。它貫穿于很多領(lǐng)域中,像銀行應(yīng)用、銀行應(yīng)用網(wǎng)站、旅游網(wǎng)站和像已經(jīng)由服務(wù)器完成的企業(yè)內(nèi)部的企業(yè)軟件。因此Equinox(編者注:OSGi的實(shí)施)在各處都出現(xiàn)。
SearchSOA:你一直緊密圍繞Eclipse工作。可以嘗試幫我們描述一下Eclipse的影響嗎?
McAffer:確實(shí)是這樣。實(shí)際上如果你回顧十年前, 那時(shí),人們?yōu)榱隋X正在賣Java IDE,那是相當(dāng)基礎(chǔ)的功能。我們基本說:“好吧,現(xiàn)在都免費(fèi)了,因此我們必須更上一層樓。”我們似乎正在看到這個(gè)的下一個(gè)趨勢,也就是服務(wù)器端Java模塊化。
當(dāng)你著眼于大局的時(shí)候,我們所做的是證明模塊化是個(gè)好東西,而且很強(qiáng)大。在某種程度上,我們已經(jīng)證明了模塊化很好,細(xì)粒度模塊化很好,而且可以成功運(yùn)用在Java中。因此,我認(rèn)為這些就是游戲規(guī)則顛覆者。
【編輯推薦】