成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Java 2007新年展望:開源后將走向何方

瀏覽:7日期:2024-03-16 18:34:48
在本文中,Java 開發(fā)人員 Elliotte Rusty Harold 從各個(gè)方面預(yù)測(cè)了 Java 平臺(tái)的新方向,從腳本到 bug 修復(fù)到新語(yǔ)法。Sun 會(huì)在幾個(gè)月后發(fā)布 Java 7,Dolphin 的一個(gè)早期的 beta 版,以此作為開端。早期的一些探尋分支

2007 年將是載入史冊(cè)的一年,Sun Microsystems 公司將于這一年在開源許可協(xié)議下發(fā)布 Java 開發(fā)包(JDK),從而放棄了對(duì) Java? 平臺(tái)的統(tǒng)馭,將權(quán)力交給了 Java 開發(fā)人員社區(qū)!在本文中,Java 開發(fā)人員 Elliotte Rusty Harold 從各個(gè)方面預(yù)測(cè)了 Java 平臺(tái)的新方向,從腳本到 bug 修復(fù)到新語(yǔ)法。

2006 年又是 Java 平臺(tái)繁榮的一年。盡管遭遇了來(lái)自 Microsoft(C#)和腳本語(yǔ)言社區(qū)(Ruby)的沖擊,但 Java 語(yǔ)言仍然保持著其世界頭號(hào)編程語(yǔ)言的地位。同時(shí),盡管 Java 6 的發(fā)布很值得慶祝,但比起宣布 Java 將在 GNU General Public License 下完全開源這一事件來(lái)說(shuō),卻不免有些黯然失色。Java 在 2007 年還能保持這種勢(shì)頭嗎?讓我們來(lái)看一下成敗的可能。

Java 平臺(tái)將成為開源平臺(tái)

2007 年上半年,Sun 將在一個(gè)開源許可協(xié)議下發(fā)布 Java 開發(fā)包(JDK)。解除 JDK 的禁錮對(duì)于 Java 開發(fā)人員社區(qū)來(lái)說(shuō)是巨大的一步,它將在今后的十年中推動(dòng) Java 平臺(tái)的發(fā)展。

JDK 的質(zhì)量將會(huì)顯著改善,因?yàn)槌绦騿T們不再僅僅報(bào)告 bug 并開始修復(fù)。Java Developer Connection 的 bug 報(bào)告將會(huì)包括對(duì) JDK 中的問(wèn)題部分的詳細(xì)分析,并提供修復(fù)的補(bǔ)丁。正如Linus 法則 所陳述的那樣,“只要給予足夠的關(guān)注,任何 bug 都是顯而易見,即調(diào)試是可并行進(jìn)行的。優(yōu)化也是一樣。開源使兩者得以 并行。

分支項(xiàng)目

遺憾的是,設(shè)計(jì)并不是和調(diào)試、優(yōu)化一樣可以并行完成的。清潔的 API 有時(shí)也需要有一只獨(dú)裁的手。但獨(dú)裁者的缺點(diǎn)是:有時(shí)他們知道在做什么,有時(shí)卻不知道。意圖成為獨(dú)裁者的各方面之間的競(jìng)爭(zhēng)往往是發(fā)現(xiàn)問(wèn)題最佳解決方案的惟一方式。

很少有公司能夠負(fù)擔(dān)得起這樣的代價(jià),為一個(gè)產(chǎn)品開發(fā)多個(gè)獨(dú)立的實(shí)現(xiàn),以便在多個(gè)產(chǎn)品中選定保留一個(gè)而摒棄其余的產(chǎn)品,但開源社區(qū)卻在朝這個(gè)方向努力。所以,您會(huì)在 Java 平臺(tái)的各個(gè)層次中發(fā)現(xiàn)分支產(chǎn)品:語(yǔ)言、虛擬機(jī)和庫(kù)。大多數(shù)的分支產(chǎn)品會(huì)失敗,但這沒(méi)什么。好主意會(huì)脫穎而出。一些分支產(chǎn)品會(huì)一直存在下去,一些會(huì)重新并入標(biāo)準(zhǔn) JDK 中。明年的這個(gè)時(shí)候,分支產(chǎn)品與主流產(chǎn)品之間的差異也許不會(huì)很明顯,但這個(gè)過(guò)程會(huì)繼續(xù)下去。

Sun 會(huì)在幾個(gè)月后發(fā)布 Java 7,Dolphin 的一個(gè)早期的 beta 版,以此作為開端。Sun 無(wú)法發(fā)布更早的 JDK 版本,因?yàn)榇嬖谝恍┲挥性?Dolphin 中才能解決的構(gòu)建問(wèn)題和許可協(xié)議問(wèn)題。盡管如此,仍有望看到第三方著手進(jìn)一步細(xì)分 Sun 的版本,來(lái)提供 Java 6、Java 5、Java 1.4,甚至更早版本的流行開源實(shí)現(xiàn)。

早期的一些探尋分支產(chǎn)品的人們可能會(huì)侵犯 Sun 公司的商標(biāo),收到 Sun 的律師寄來(lái)的討厭的律師信。我們需要一個(gè)通用的未注冊(cè)為商標(biāo)的名字,讓所有人都能使用。我建議用 “J —— 我希望沒(méi)人用單字母作商標(biāo)。

開源項(xiàng)目從未消亡,只是有些褪色。就像之前的 Blackdown Project、GNU Classpath、Kaffe 和其他開源 JDK 項(xiàng)目一樣,他們的開發(fā)人員都轉(zhuǎn)向其他事情了。如果一個(gè)項(xiàng)目至今還沒(méi)有達(dá)到 1.0,那么恐怕以后永遠(yuǎn)也達(dá)不到了。

期待 Java 7

Dolphin 不會(huì)在 2007 年發(fā)布。2008 年是更為現(xiàn)實(shí)的目標(biāo)。那就是說(shuō),工作尚在進(jìn)行中,它的一些功能也許會(huì)作為早期的標(biāo)準(zhǔn)擴(kuò)展或至少作為 beta 登場(chǎng)。

遺憾的是,為一門語(yǔ)言添加功能遠(yuǎn)比刪除功能要簡(jiǎn)單得多。幾乎不可避免地,隨著時(shí)間的推移,語(yǔ)言不是朝著簡(jiǎn)單的方向發(fā)展,而是越來(lái)越復(fù)雜,越來(lái)越讓人困惑。即使是那些單獨(dú)看起來(lái)很好的功能,在彼此疊加后也會(huì)出現(xiàn)問(wèn)題。

令人遺憾,Java 社區(qū)沒(méi)有接受這個(gè)教訓(xùn),盡管這種失敗并無(wú)特殊性。但總有一些太酷又太讓人激動(dòng)的新語(yǔ)法令語(yǔ)言設(shè)計(jì)者難以抗拒 —— 即便這樣的新語(yǔ)法不能解決任何實(shí)際問(wèn)題。于是對(duì) Java 7 的新語(yǔ)言功能就有了巨大的要求,包括閉包、多繼承和操作符重載。

我猜想在這一年結(jié)束前,會(huì)在 Java 7 beta 中看到閉包,也許還能看到操作符重載(有五成的把握),但不會(huì)出現(xiàn)多繼承。Java 中有太多東西是基于單個(gè)根的繼承層次。沒(méi)有可行的方式改進(jìn)多繼承,使之適應(yīng)這門語(yǔ)言。

目前有許多語(yǔ)法糖方面的提議,有一些有意義,有一些沒(méi)有。許多提議都專注于將像 getFoo() 這樣的方法替換為像 -> 這樣的操作符。

……

完整文章請(qǐng)察看原文:http: //ibm.csdn.net/ISN_J.aspx?action=JMP&pointid=1530

標(biāo)簽: Java
相關(guān)文章: