文/劉鐵鋒
Java的開發工具中,最出名的莫過于Borland公司的JBuilder了。對于一些沒有弄清楚開發工具與JDK的區別的Java入門者來說,JBuilder就如同Visual C++之于C++,以為JBuilder就是Java的全部。比起捆綁在服務器上銷售的JDeveloper,JBuilder應該是唯一的僅靠自身的實力而占領了大部分市場的Java商用開發工具了。而JBuilder作為Java 開發工具的王者,其奪冠之路并非一帆風順。直到Java的天才Blake Stone成為JBuilder的Architect之后,JBuilder 2.0以及3.0才逐漸推出。2000年3月14日,JBuilder 3.5的推出別具意義,它成為了業界第一個用純Java打造的開發工具,也風靡了整個Java開發工具市場。在同年11月份推出的JBuilder 4.0乘勝追擊,沖破了50%的市場占有率,成為了真正Java開發工具的王者。
Borland以每半年左右推出一個新版本的速度,讓眾多的對手倒在了沙場。而Microsoft因為與Sun的官司,也使得一個強大的對手退出了戰爭。2001年,加入了對企業協作支持的JBuilder 5以及強化了團隊開發工具的JBuilder 6打敗了最后一個對手Visual Age For Java。2002年JBuilder 7推出之后,再也沒有其他廠商與JBuilder競爭。
孤獨的王者并沒有停下腳步,在2003年到2005年間,JBuilder也仍然延續了其半年一個版本的速度,推出了8、9、10、2005四個版本。強大的功能以及持續的改進,也讓Java程序員多了一分對能夠在開發工具市場上與Microsoft血拼十數年的Borland的敬仰。
Oracle : Java人永遠的情結
文/熊節
在林林總總的數據庫之中,有一種尤其令人又愛又恨、印象深刻,那就是關系型數據庫市場的“大佬”——Oracle。
從公司的角度,Oracle和Sun有著諸多相似之處,例如:兩家公司都擁有一位個性鮮明的CEO。早在Java誕生之初的1995年,Oracle就緊隨NetScape從而第二個獲得了Java許可證。從那以后,Oracle對Java的鼎力支持是Java能夠在企業應用領域大獲成功的重要原因之一。
所有J2EE程序員都知道,Oracle的JDBC驅動雖然與Oracle數據庫配合良好,但在不少地方使用了專有特性。其中最為著名的就是“CLOB/BLOB問題”,諸如此類的問題給開發者帶來了很多麻煩。為了同時兼顧不同的數據庫,他們不得不經常把自己的一個DAO(數據訪問對象)寫成兩份版本:針對Oracle的版本和針對其他數據庫的版本。有不少人為了開發便利,舍棄了數據庫之間的可移植性,將自己的產品綁定在Oracle的專有特性上。
Oracle提供的Java開發工具也與此大同小異。不管是數據庫內置的Java支持還是JDeveloper IDE, Oracle的Java工具都和Oracle數據庫有著千絲萬縷的聯系?雌饋,只要Oracle還是數據庫市場上的“頭牌”,了解、學習Oracle的專有特性,周旋于Oracle特有的問題和解決方案之中,就將仍舊是J2EE程序員在數據庫基礎和SQL之外的必修功課。對Oracle的愛與恨,也將仍舊是Java人心頭一個難解的情結。
Struts、Hibernate : 讓官方框架相形失色的產品
文/劉鐵鋒
好的框架能夠讓項目的開發和維護更加便捷和順利。相比Sun官方標準的遲鈍以及固執,開源框架也更得到Java程序員的共鳴。Struts以及Hibernate就是這樣一類產品,它們簡單、優雅,更讓官方的產品相形失色。
談起Struts,不可避免地就要提及MVC(Model-View-Controller)的理念。而準確地講,MVC的提出卻最早源于JSP的標準。在1998年10月7號,Sun發布的JSP的0.92的規范中提出的Model 2就是MVC的原型。在1999年12月Java World的大會中,Gavind Seshadri的文章最早闡述了Model 2就是一種MVC的架構,同時也提及了MVC架構是一種最好的開發方法。2000年3月,由Craig McClanahan發布的Struts成為了最早支持MVC的框架。Struts在設計上雖然存在一些詬病,但是不可否認的是,它使得Java Web應用的開發更加簡潔和清晰,也讓更多的程序員愛上了Java,并開始遺忘官方的JSP。時至今日,比起如WebWork、Tapestry以及Sun官方的JSF,Struts或多或少存在些不足,但是眾多成功項目的實施,仍然使其牢牢占據的Java Web應用框架的首位。
Hibernate則在某種程度上改變了人們對構建J2EE的思路。相比其EJB的Entity Bean的映射技術,Hibernate則顯得更加簡潔和強大。五分鐘就能把Hibernate跑起來,讓更多的Java程序員享受到了開發的樂趣。第15屆Jolt大獎中,最優秀數據庫、框架以及組件的獎項中,Hibernate當仁不讓獲得頭籌;不僅如此, Hibernate甚至還影響了官方的標準。在眾多Java程序員翹首以待的EJB 3.0的規范中,Hibernate得到了支持。
Java開源的繁榮不僅讓眾多Java的開發者享受到了更多的便利,甚至影響了官方的標準?峙逻@也是作為Java人獨有的樂趣之一吧。
PetStore : J2EE人的必修課
文/陶文
很少有一個例子項目如PetStore這 般廣為人知,而這很大程度上要歸功于Sun很“英明”地把PetStore做成一個只展示架構而在性能調優上留下了大大余地的例子。圍繞著性能話題,產生了頗為有趣的廠商之間以及平臺之間的Pet Wars。除去這些關于性能的流言蜚語乃至中傷,PetStore在展示J2EE1.3平臺的架構、演示什么叫分層方面還是有著很大的功勞的。而且PetStore在架構方面的豐富性使得其成為J2EE的那些輕量級小兄弟們展示自身的一個必選科目。
不談那些圍繞PetStore的口水,那些數不盡的盜版,PetStore給開發新手帶來的最重大的影響,我想應該是架構的觀念而不是性能,也不是業務。做為一種技術的Demo,這無可非議。但是如果你是一個新手,跟著PetStore亦步亦趨地學習J2EE開發,難免會陷入過度設計、華而不實之類的困境。圍繞著.NET的PetStore的克隆PetShop展開的架構與性能的大討論,是不是也在促使我們學習新技術時應該以解決問題為導向呢?特別是當你想把一個如PetStore這般的Sample Project的技術照搬到你的現實世界的Real Project來時。
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/