一個JavaFans的質疑和憂慮

本人學習使用Java也算是有幾個年頭了。對Java可說是又愛又恨,愛它的跨平臺和廣大的開源支持,恨它的速度慢、耗內存,和朝令夕改般的混亂。估計廣大同道也多是如此吧?
本人水平有限,對其底層運作的機制基本上是不懂的。只是看Think in java上的介紹,Java的內存管理與垃圾回收機制是相當耗費資源的。
使用Java的IDE,只要是功能一複雜,速度和內存消耗就令人忍受,不論是JB、WSAD、JDeveloper,還是Eclipse,全一樣。
與之相比,.NET在此方面的表現就可說是令人驚歎了。在普通配置的機器上,往往連開幾個Visual Studio都不會導致明顯的問題,同樣身爲JIT,真不知MS是怎樣做到的?
聯想到過去的VJ,本人甚至懷疑MS根本就是在誤導Sun的底層開發,但Java在Linux上的速度與內存表現同樣不佳,這樣就很令人失望了。無疑,Java的開放性與充分的OOP是卓越的,甚至目前仍然是最好的;可惜,世間美好的事物也許總是有缺陷的,多年過去了,Java的速度與內存消耗仍舊是其硬傷。

在開發效率上,Java也是廣遭詬病。對於大多數的工程,使用Java也許是最慢的。據很多牛人的說法,Java開發高級企業應用是高效的。可惜IT界的大多數應用其實都是中小應用,大多數開發人員也是做中小應用,那麼是否意味着我們就永遠只能用這把牛刀去殺螞蟻?
其實,從學習研究的角度上講,Java無疑是最值得花費時間與精力的。經過多年開源界的狂熱,其對OOP的闡釋之精深廣泛可說是NO.1。具有諷刺意味的是,純正的OOP本來就是爲大幅提高軟件開發效率而產生的,真正熟練掌握OOP的確可以達到這樣的目標。可惜當前真正熟練掌握OOP所需要的時間、精力、智力也許遠遠超出了廣大同道的預算。最終令人扼腕的事實就是,多數人在熟練掌握OOP之前就不得不放棄了這樣的努力。這與J2EE所反覆宣揚的初衷應該是背道而馳的。
回想起當年使用VB、PB、Delphi日子,其實是很愜意的。即使現在看一看那些代碼,以純正OOP的觀點看來,稱之爲垃圾都不爲過,可是它真的能用!即使是所謂“寫完即扔掉”,但很easy,生產效率的確很高!對於牛人來說,可視化編程只能看作是小孩子的玩具,可是大多數程序員正是用這些玩具支撐起了軟件業的天空!
無庸置疑,J2EE這類的牛刀的確是可以打造出藝術珍品,而可視化工具這類的玩具也許只能批量製造日用品。但是,絕大多數人類正是依靠日用品過活!

MS的壟斷和伎倆是惹人生厭的,但MS正是生產日用品的公司,而且它的日用品最容易使用,所以它如此成功。
.NET現在與Java相比只能算是個毛頭小夥,但小心,如果現今的統治者(J2EE)還是擺出一付學院式的傲慢,對程序員的苦惱置之不理的話,那麼它的末路也就不遠了(正如當年的Unix與Dos、Windows)。

開放與免費對於我們這樣的窮國是非常重要的。可是如果當某一天,多數人發現在開源領域浪費的時間與精力遠遠超過選用商用軟件成本的時候,只怕會義無反顧地投向原本所痛恨的MS!但願這一天不要來臨。
憂哉。

發佈了30 篇原創文章 · 獲贊 2 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章