以文本方式查看主題 - 曙海教育集團論壇 (http://www.hufushizhe.com/bbs/index.asp) -- JAVA語言開發 (http://www.hufushizhe.com/bbs/list.asp?boardid=64) ---- Java在Linux上會成為占統治地位的語言嗎? (http://www.hufushizhe.com/bbs/dispbbs.asp?boardid=64&id=2490) |
-- 作者:wangxinxin -- 發布時間:2010-12-11 10:29:14 -- Java在Linux上會成為占統治地位的語言嗎? 據國外網站報道,經過一番爭斗,.Net與Java共同保持了在Windows桌面的統治地位。現在,一場新的戰爭正處于醞釀之中,只不過這次的戰場轉移到了Linux桌面上。由于Java已基于GPL開放了源代碼,因為就算是最嚴格遵守純正自由軟件協議的軟件也可以把Java打包進去。而事實上,確實有相當多的人已在這么做了。以前在開發中竭力避開Java語言的GPL的忠實擁躉,現在則開始把Java做為開源世界的優秀技術,努力讓它融入進去。 除了為Java取得GPL許可,Sun公司的Swing團隊在Java 6中,還在力圖使Linux桌面的外觀看上去更美觀。關于這樣做的效果,我們不妨比較兩幅截圖。一幅取自真正的Linux GNOME桌面,另一幅則是利用Swing制作的。事實上,你將看難看出這兩者的區別。Swing現在大量采用了GNOME正在應用的色彩和設計風格。雖然Swing還不是Linux平臺上開發者的首選,但它確實沒有其他Linux上的Java工具的弱點。 Java基于GPL的開源確實來得不是時候,但幸好微軟在這時發布了他們的Vista。當Windows桌面的開發者面對著難用而且安全性存在缺陷C 或C++,他們紛紛轉向了Visual Basic。但在Vista上,微軟傾向于所有的桌面應用利用.Net管理代碼,這一策略收到了奇效。但在Linux桌面上,開發者仍在延用C或C++語言,這樣開發者就不得不面對令人棘手的安全問題和復雜的內存分配問題。很顯然,Linux桌面的開發者也需要一場類似的轉變,并且我們不得不說,這已是一場遲到的轉變。而當Linux桌面的開發者著手類似于Windows平臺的轉變時,他們會發現,他們面臨的只有兩個選擇;其中之一是由Novell所支持的Mono,另一個就是Java。 對我來說,更傾向于選擇Java出于以下幾方面的原因。首先,Java的發展時間比Mono長得多。盡管Mono成長迅速,但Java早在此之前已成為了一個穩定、成熟的平臺。其次,Java包含了許多大量的開源工具和庫文件。再次,Java擁有許多大型開發社區,并且在SourceForge上的開源項目大多數采用了Java做為開發語言。在FreshMeat.net的情況也大致此,采用Java開發的項目達到了5383個,而采用C#的只有 284個。此外,Mono還存在一個發展瓶頸,這就是它的更新必須要滯后于.Net平臺。而Java則是基于GPL發布的,隨時可以保持更新。在協議方面,Mono同樣存在一個陷阱,因為它的類庫是基于MIT協議發布的,因此軟件的開發者或所有者不能名正言順地為利用到庫的修正申請專利。 如果你對我的觀點持有異議,就還是請你原諒我對Java語言的偏愛吧。但我還是認為以上的觀點還是有客觀依據的,并且說明了Java將成為Linux桌面應用開發首選語言的主要原因。在開源平臺上利用Java卻有點名不正言不順的日子再也不會來了。 還有一點,Java與Linux將是一種互相促進的關系。桌面Linux希望在整個桌面市場上占有更大的市場份額,而Java能提高一個更高效、更安全、更容易排錯的開發平臺,并且利用這一平臺,開發出的應用同樣能跑在Windows上面。這不僅會促進Linux達成它的目標,還會最大可能地保護開發者的利益。從這個角度看,Java與桌面Linux可以說是天生的一對,地造的一雙。 |