在Java世界里打拼也好幾年了,也看到了各種不同技術(shù)的浮浮沉沉,倒是發(fā)現(xiàn)了一個(gè)簡單的規(guī)律,最簡單的東西往往是最有用的,簡單的軟件也是種美。
在 Java Web 領(lǐng)域,曾經(jīng)有無數(shù)各種各樣的框架,Struts1/2,JSF,Echo1/2,Tapestry,Wicket,等等等等了,這么多不同的框架代表了兩個(gè)不同的方向,除了 Struts 這個(gè)是基于請(qǐng)求的,其他幾個(gè)都是算是事件驅(qū)動(dòng)的,但是后面幾個(gè)在整個(gè)市場上所占的份額也趕不上 Struts 一家。HTTP 請(qǐng)求本來是很簡單的,而 Struts 就是基于這樣簡單的概念,但是卻有無數(shù)人希望重現(xiàn) VB 時(shí)代的那種拖拖拉拉的編程方式,希望用事件驅(qū)動(dòng)一切,但是大部分人都失敗了。失敗的原因也其實(shí)不那么復(fù)雜,有的是不夠成熟,像 JSF 這樣被 Sun 官方大力推崇的框架,但 Ajax 出現(xiàn)的時(shí)候,JSF 中想靈活的用 Ajax 都成了一種奢望,有的是資料太少了。像 Echo2 這樣的框架資料,少的跟珍惜保護(hù)動(dòng)物似的。
當(dāng)然也不是沒有成功的,微軟憑借其強(qiáng)大的開發(fā)實(shí)力,和開發(fā)工具的配合,加上沒有給 ASP.net 用戶更多選擇余地,取得了無人匹敵的成功。但是這個(gè)成功在 Java 世界是不會(huì)擁有的,Java 世界沒有微軟這樣的巨頭,Java 世界中拿得出手的幾個(gè)開發(fā)工具,Eclipse,Netbeans,IDEA,在所見即所得的開發(fā)上遠(yuǎn)遠(yuǎn)的落后于 Visual Studio。相比微軟帝國,Java 世界多的是中小型的,開源的工具產(chǎn)品。規(guī)模上都遠(yuǎn)遠(yuǎn)落后于微軟,Java 世界唯一可走的路便是簡單了。對(duì) Java 世界來說,簡單不僅僅是種美,更是生存之道。
起初作為 Java 世界 PK 微軟產(chǎn)品的重頭戲,EJB 在學(xué)院派的力捧下誕生了,EJB 似乎從來都不打算讓人活的輕松,一個(gè)簡單的東西非得搞的復(fù)雜無比才行。而且其持久層 Entity Bean,似乎連基本功能都沒能實(shí)現(xiàn),更別談大規(guī)模使用了。EJB 1/2 的時(shí)代是開發(fā)人員永遠(yuǎn)無法忘卻的噩夢(mèng)。
Java 世界也從來不缺活躍分子,Rod Johnson 這個(gè)有種音樂家氣質(zhì)的牛人憑借自己多年的積累,推出了 Springframework,這樣一個(gè)基于 IoC 和 AOP 兩個(gè)概念的簡單易用的框架,完成了很多起初只有 EJB 才能完成的工作,Spring 也一夜成名,成為 Java 世界使用最為廣泛的輕量級(jí)應(yīng)用框架。
幾乎是同時(shí),來自澳洲的小帥哥 Gavin King 也在用一種與眾不同的方案去替代現(xiàn)有比較復(fù)雜的 Java 持久化方案,最后他的 Hibernate 也成為替代原有 EJB 持久化方案的選擇。相對(duì)簡單的 Hibernate 也取得了巨大的成功。
其實(shí)這樣的例子在 Java 世界也非常多,以至于后來來自于 Ruby 開發(fā)社區(qū)的 Ruby on Rails 的出現(xiàn),給了 Java 開發(fā)者當(dāng)頭一棒,原來還有更簡單的做法哦。于是 Java 世界慢慢的開始對(duì)多種腳本語言進(jìn)行支持,包括 Ruby,以及后來自創(chuàng)的 Groovy。以此去打造類似 RoR 那樣簡單的開放方式。
生活其實(shí)是很簡單的,軟件開發(fā)其實(shí)也是一樣,用簡單的方式,去打造簡單的軟件,Java 世界用無數(shù)失敗的教訓(xùn)證明了這一點(diǎn)。像我呢,也喜歡用這樣簡單的方式去工作,最喜歡 IDEA 去寫代碼,最喜歡 Struts2 + Spring2 + Hibernate3 這套組合,最最喜歡的是簡單,因?yàn)楹唵问亲蠲赖墓ぷ鞣绞健?/p>
posted on 2009-06-23 16:08
steady 閱讀(3255)
評(píng)論(6) 編輯 收藏 所屬分類:
技術(shù)隨筆