去年你曾預(yù)言J2EE正在迎來一次劃時(shí)代的變革,關(guān)鍵詞是EJB,對(duì)此你能再做一次闡述嗎?
J2EE可以說是這幾年發(fā)展非?焖俚囊粋(gè)應(yīng)用開發(fā)平臺(tái),這和Java這種靈活、方便、開放、跨平臺(tái)的語言具有不可分隔的聯(lián)系。Java是一個(gè)講求實(shí)用的語言,所有對(duì)應(yīng)用開發(fā)有用的特性都被吸收進(jìn)來,成為Java平臺(tái)的一部分,而那些花稍但無實(shí)際作用的特性被摒棄。Java的類庫豐富、開發(fā)社區(qū)完善等特色標(biāo)志著它還將在相當(dāng)長(zhǎng)的時(shí)期內(nèi)保持旺盛的生命力。
J2EE可以說是在Java平臺(tái)中應(yīng)用最為廣泛的技術(shù),而且正在逐步走向成熟。JCP組織在總結(jié)了過去J2EE實(shí)踐中的經(jīng)驗(yàn)和教訓(xùn),在將來的Java EE 5.0規(guī)范中將對(duì)J2EE技術(shù)做一個(gè)相當(dāng)大的調(diào)整,其中最受影響的就是EJB規(guī)范。過去EJB給人的感覺過重,而且開發(fā)過程復(fù)雜,不易維護(hù),因此在實(shí)際項(xiàng)目中使用EJB的很少。在EJB3中,EJB的開發(fā)方法將徹底改變,不再使用Home, Remote接口等概念,而采取輕量級(jí)的開發(fā)模式,以Java 5.0中引進(jìn)的annotation作為EJB描述工具,特別是實(shí)體Bean的角色將被重新定位,使其單純擔(dān)負(fù)起O/R Mapping的作用。所有這些舉措都是為了使EJB的開發(fā)過程更加簡(jiǎn)單、效率更高、維護(hù)更方便。
在Web開發(fā)方面,Java EE 5增加了新的JSF規(guī)范,這是一個(gè)類似于struts之類的web開發(fā)框架,但比它們更方便。JSF基于事件及UI組件模型的開發(fā)方式顛覆了傳統(tǒng)的web開發(fā)習(xí)慣,結(jié)合開發(fā)工具的支持,將使其更接近于一個(gè)真正的MVC編程環(huán)境。使用JSF開發(fā)表現(xiàn)層現(xiàn)在看起來更象swing編程,基于UI組件的模型能夠把web界面定制的很多工作獨(dú)立出來,廠商可以針對(duì)具體的目標(biāo)定制更多更好用的組件。而我們作為國產(chǎn)中間件廠商,比國外廠商理應(yīng)更了解國內(nèi)客戶的需求,因此我們的應(yīng)用開發(fā)平臺(tái)Apusic Studio將成為以JSF為基礎(chǔ)的一個(gè)強(qiáng)大的web應(yīng)用開發(fā)平臺(tái)。
現(xiàn)在很多應(yīng)用已經(jīng)轉(zhuǎn)移到所謂的輕量級(jí)J2EE方案上去了,比如Spring,已經(jīng)紅了快兩年了。現(xiàn)在才推出Java EE 5.0是不是來得太晚些了?怎樣預(yù)期Java EE對(duì)于整個(gè)產(chǎn)業(yè)的影響?
在我們主辦的“Java俱樂部”地面活動(dòng)上,也有技術(shù)愛好者問及我這個(gè)問題,當(dāng)時(shí)我回答到“非官方和官方互相促進(jìn),Java EE 5.0來得并不晚”。
開源社區(qū)(往往是非官方標(biāo)準(zhǔn))代表的經(jīng)常是理想主義者,而商業(yè)公司(往往是官方標(biāo)準(zhǔn))代表的經(jīng)常是現(xiàn)實(shí)主義者。兩者之間有相互競(jìng)爭(zhēng)的地方,但從長(zhǎng)遠(yuǎn)來看,更多的是一種是相互補(bǔ)充、相互促進(jìn)的過程。
Spring及Hibernate等開源框架,已經(jīng)對(duì)Java EE的技術(shù)發(fā)展趨勢(shì)產(chǎn)生了非常重大的影響;蛘哒fJava EE的發(fā)展,也借鑒并吸取了這些開源框架的一些優(yōu)秀的思想。從技術(shù)層面來看,這反而會(huì)使Java EE具有一定的后發(fā)優(yōu)勢(shì);同時(shí),這些新技術(shù)在業(yè)界的廣泛使用,總是需要一定的周期,并且,采用Java EE構(gòu)建業(yè)務(wù)系統(tǒng)的最終用戶,也總是希望能夠獲得諸多廠商的官方支持與商業(yè)標(biāo)準(zhǔn)。因此,從這些方面來看,Java EE 5.0 來得其實(shí)并不晚。至于Java EE對(duì)于整個(gè)產(chǎn)業(yè)的影響,可能是J2EE這個(gè)概念自誕生以來比較重量級(jí)的一次震撼。它所帶來的影響是深遠(yuǎn)的(更多的表現(xiàn)在對(duì)J2EE開發(fā)過程的影響),但用戶自1.4平臺(tái)向5.0平臺(tái)之上的遷移,卻是平緩的。
讓我們把話題再回到你的心血杰作Apusic Platform產(chǎn)品家族上,有人曾說,國產(chǎn)中間件的出路是專注于某個(gè)產(chǎn)品、用單一化的差異優(yōu)勢(shì)競(jìng)爭(zhēng)。以前同樣有人講APUSIC產(chǎn)品線單一,但現(xiàn)在我聽說你們馬上要推出消息中間件和開發(fā)平臺(tái),在這里你能否對(duì)這兩種產(chǎn)品作一點(diǎn)介紹?
過去我們的產(chǎn)品線是比較單一,僅有一個(gè)應(yīng)用服務(wù)器產(chǎn)品,這次我們推出了Apusic MQ和Apusic Studio這兩個(gè)產(chǎn)品,使產(chǎn)品線有了很大的擴(kuò)充,形成一個(gè)相對(duì)比較完整的Apusic Platform產(chǎn)品家族。在這個(gè)產(chǎn)品家族中Apusic Studio將扮演一個(gè)非常重要的角色。我們知道,各廠商的應(yīng)用服務(wù)器產(chǎn)品都是大同小異的,用戶主要根據(jù)性能、易用性、售后服務(wù)等指標(biāo)來進(jìn)行選擇。但是僅有應(yīng)用服務(wù)器產(chǎn)品是不夠的,還需要一個(gè)好的開發(fā)工具來支持。過去我們就深受缺少開發(fā)工具的困擾,很多用戶其實(shí)很喜歡Apusic應(yīng)用服務(wù)器,覺得用起來很不錯(cuò),但開發(fā)起來太麻煩,甚至有人先在其他平臺(tái)上開發(fā),等開發(fā)完了再移植過來,這種困擾多少打擊了一部分開發(fā)人員的積極性。
在Apusic Studio立項(xiàng)會(huì)議上,我們一開始是想為JBuilder、Eclipse等寫一些插件,利用第三方開發(fā)工具來支持Apusic的開發(fā),但我們最終拋棄了這一想法,決定搞一個(gè)和Apusic應(yīng)用服務(wù)器緊密結(jié)合的,更接近于應(yīng)用開發(fā)的平臺(tái)。金蝶集團(tuán)具有十幾年的應(yīng)用開發(fā)歷史,積累了大量的經(jīng)驗(yàn)和教訓(xùn),在這樣的基礎(chǔ)上,我們更應(yīng)該秉承“幫助客戶成功”的集團(tuán)宗旨,不僅向用戶提供一個(gè)方便、高效的開發(fā)工具,更重要的是要在產(chǎn)品中和用戶分享金蝶的應(yīng)用開發(fā)經(jīng)驗(yàn),以開發(fā)思想、開發(fā)模式、開發(fā)工具、應(yīng)用組件等全方位的開發(fā)平臺(tái)提供給客戶。
Apusic Studio以Eclipse為基礎(chǔ),不僅具有大多數(shù)J2EE開發(fā)工具所應(yīng)當(dāng)具有的功能,還提供了以XP方法為代表的輕量級(jí)開發(fā)方面的工具,另外,我們還提供了一些現(xiàn)成的組件,以幫助用戶快速構(gòu)建應(yīng)用系統(tǒng)。我們知道,在J2EE規(guī)范中,將一個(gè)應(yīng)用的開發(fā)分解成若干個(gè)角色,包括開發(fā)、配置、部署、管理等,但實(shí)際上,部署、配置、管理等階段,都是開發(fā)過程中必不可少的一個(gè)階段。那么,怎么把這些階段有機(jī)的集成在一起呢?Apusic Studio就是這樣一個(gè)統(tǒng)一的開發(fā)平臺(tái),它基于Eclipse技術(shù),通過與Apusic應(yīng)用服務(wù)器的緊密集成,給開發(fā)人員提供了一個(gè)輕量級(jí)的J2EE開發(fā)平臺(tái)。
最后一個(gè)問題說點(diǎn)輕松的,國內(nèi)很多程序員都曾看過你那篇?jiǎng)?chuàng)下點(diǎn)擊幾十萬的牛帖《程序員的幾個(gè)基本原則》,那么現(xiàn)實(shí)生活中你真是這樣生活的嗎?比如寫累了休息時(shí)瘋狂打暴力游戲?
相關(guān)推薦:計(jì)算機(jī)等級(jí)考試二級(jí)Java經(jīng)典算法大全匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |