Java, Only Java!

          統(tǒng)計(jì)

          留言簿(20)

          積分與排名

          好友空間

          文檔技巧

          閱讀排行榜

          評(píng)論排行榜

          java十年-十大產(chǎn)品- -(轉(zhuǎn))

          Sun JDK :Java的基石
          文/莫映

          眾所周知,流傳于市的JDK不單Sun一家,比如IBM的JDK、BEA的JRocket、GNU的GCJ,以及如Kaffe這樣的開源實(shí)現(xiàn),不一而足。但是,根正苗紅的Sun官方JDK一直以來都是備受矚目的主流,它對(duì)Java社區(qū)的影響也是舉足輕重。
          1996年1月,Sun在成立了JavaSoft部門之后,推出了JDK 1.0,這是Sun JDK(Java Development Kit)的首個(gè)正式版本;當(dāng)年12月,JDK1.1出爐。該版除了對(duì)前序版本部分特性做了改進(jìn)以外,重寫了AWT,采用了新的事件模型。1998年12月,JDK 1.2正式發(fā)布。此時(shí)的類庫(kù)日臻完善,API已從當(dāng)初的200個(gè)類發(fā)展到了1600個(gè)類。在1.2版本中引入了用100%純Java代碼寫就的Swing,同時(shí),Sun將Java更名為Java 2。
          1999年,Java 技術(shù)形成了J2SE、J2EE和J2ME三大格局。Sun向世人公布了Java HotSpot性能引擎技術(shù)的研究成果。HotSpot旨在進(jìn)一步改善JVM性能,提高Java ByteCode的產(chǎn)生品質(zhì),加快Java應(yīng)用程序的執(zhí)行速度。J2SE 1.3發(fā)布于2000年;2002年2月間,J2SE 1.4問世,這是有JCP參與以來首個(gè)J2SE的發(fā)行版本。2004年9月30日,代號(hào)為“Tiger”的J2SE 5.0終于出籠了,這次發(fā)布被譽(yù)為Java平臺(tái)歷來發(fā)布中特性變動(dòng)最大的一次。包括泛型在內(nèi)的若干重大語法改進(jìn)、元數(shù)據(jù)支持,包括多線程、JDBC在內(nèi)的多項(xiàng)類庫(kù)改進(jìn),都令廣大Java程序員激動(dòng)不已。自此,Sun的官方JDK(J2SE Development Kit)已經(jīng)步入了一個(gè)新的高度。

          ?

          Eclipse :以架構(gòu)贏天下
          文/惡魔

          IBM是在2001年以4000萬美元種子基金成立Eclipse聯(lián)盟,并且捐贈(zèng)了不少程序代碼。如今,該組織有91個(gè)會(huì)員,包含許多全球最大的軟件商。根據(jù)Evans Data公司的資料,Eclipse是目前最受歡迎的Java開發(fā)工具。
          Java廠商若要共同對(duì)抗微軟,彼此之間就要有共同的開發(fā)工具才行。
          在Eclipse平臺(tái)上,程序員可使用好幾種不同的語言。在前端方面,用戶可整合多種工具來撰寫Plug-in程序或Unit Test。Eclipse最大的特色就在于其完全開放的體系結(jié)構(gòu),這代表任何人都可下載并修改程序代碼,給Eclipse寫插件,讓它做任何你能想到的事情,即所謂“Design for everything but nothing in particular”。
          Eclipse基金會(huì)的架構(gòu)比較特別,反映出企業(yè)現(xiàn)今對(duì)于開放原始碼計(jì)劃也越來越積極主動(dòng)。Eclipse不像一般開放源碼軟件容許個(gè)人的捐獻(xiàn)程序,該基金會(huì)是由廠商主導(dǎo)。不論是董事會(huì)成員或者是程序贊助者幾乎都來自于獨(dú)立軟件開發(fā)商(ISVs)的員工。
          Eclipse首席執(zhí)行官M(fèi)ike Milinkovich說,這種廠商會(huì)員制是特意設(shè)計(jì)的;他說Eclispe軟件開發(fā)快速就是因?yàn)闀?huì)員制的關(guān)系,同時(shí)又加上開放源碼開發(fā)模式的臨門一腳。這與一般透過標(biāo)準(zhǔn)組織的做法全然不同。 這其實(shí)正好驗(yàn)證了一句老話:“開放即標(biāo)準(zhǔn)”。


          JUnit/Ant : 讓Java自動(dòng)化的絕代雙驕
          文/劉鐵鋒

          在Java程序員必備的工具中,共?同擁有且交口稱贊的恐怕就非JUnit、Ant莫屬了。一個(gè)是單元測(cè)試的神兵利器,一個(gè)是編譯部署的不二之選,它們讓Java的開發(fā)更簡(jiǎn)單。
          JUnit由XP和TDD的創(chuàng)始人、軟件大師Kent Back以及Eclipse架構(gòu)師之一、設(shè)計(jì)模式之父Erich Gamma共同打造。名家的手筆和理念使得JUnit簡(jiǎn)單而強(qiáng)大,它將Java程序員代入了測(cè)試驅(qū)動(dòng)開發(fā)的時(shí)代。JUnit連任了2001、2002年“Java World編輯選擇獎(jiǎng)”以及2003年“Java World最佳測(cè)試工具”和2003年“Java Pro最佳Java測(cè)試工具”等眾多獎(jiǎng)項(xiàng),深受Java程序員好評(píng)。
          Ant是開源項(xiàng)目的典范,它讓IDE的功能更加強(qiáng)大,從Sun的NetBeans到JBuilder,主流的IDE中處處都有它的身影。“Another Neat Tool”原是它的本名,但這已經(jīng)漸漸不為人知。它徹底地讓部署自動(dòng)化,而程序員需要做的僅僅是幾條簡(jiǎn)單的配置命令。和JUnit一樣,Ant也榮獲了眾多的殊榮:2003年JavaWorld“最有用的Java社區(qū)開發(fā)的技術(shù)編輯選擇獎(jiǎng)”, 2003年Java Pro“最有價(jià)值的Java部署技術(shù)讀者選擇獎(jiǎng)”,2003年“JDJ編輯選擇獎(jiǎng)”,也讓Ant受到的多方的認(rèn)可。
          Ant對(duì)JUnit的全面集成,則使得一切都變得更加完美。只需簡(jiǎn)單地配置,從自動(dòng)測(cè)試到報(bào)告生成,從編譯到打包部署均可自動(dòng)完成。強(qiáng)大的功能,簡(jiǎn)單的配置,讓Java程序員高枕無憂。實(shí)可謂讓Java自動(dòng)化的絕代雙驕。

          Websphere : 活吞市場(chǎng)的大鯨
          文/jini

          1999年, IBM與Novell簽訂合作協(xié)議,成功地提供電子商務(wù)的解決方案給予原先使用NetWare的用戶。同年更是推出了WebSphere Application Server 3.0,并且推出WebSphere Studio與VisualAge for Java讓工程師可以快速開發(fā)相關(guān)的程序。2001年,IBM更是宣布將應(yīng)用服務(wù)器、開發(fā)工具整合在一起,與DB2、 Tivoli及Lotus結(jié)合成為一套共通解決方案,如今、IBM更是并入了Rational Rose ( UML tools )讓開發(fā)流程更是完整化。
          Sun在Web Services的策略方面遠(yuǎn)遠(yuǎn)落后于微軟與IBM, 當(dāng)他們手拉手在研訂Web Services規(guī)范, 加上IBM買硬件送軟件或是買WebSphere送DB2的策略讓企業(yè)大佬們紛紛轉(zhuǎn)向IBM的陣營(yíng), Sun才驚覺大勢(shì)已去。WebSphere復(fù)雜的安裝,深?yuàn)W的設(shè)定,難以理解的出錯(cuò)訊息不斷地挑戰(zhàn)開發(fā)者的耐心與毅力。
          IBM如今已經(jīng)不是將WebSphere定義為單一產(chǎn)品,它已經(jīng)是一個(gè)平臺(tái)的代名詞。它里面的產(chǎn)品目前包含了應(yīng)用服務(wù)器、商業(yè)整合、電子商務(wù)、 數(shù)據(jù)訊息管理、網(wǎng)絡(luò)串流、軟件開發(fā)流程、系統(tǒng)管理、無線語音等等。非常多樣化,也讓企業(yè)界愿意相信WebSphere可以帶給他們一套完整的解決方案。同時(shí), IBM也在推廣SOA的概念, 簡(jiǎn)單來說, 利用Web Service的耦合性與工作流程的整合, 為企業(yè)內(nèi)部打造以服務(wù)為導(dǎo)向的架構(gòu)。
          IBM捐獻(xiàn)出Eclipse帶給Java開發(fā)人員對(duì)IDE的重新掌握。未來是否會(huì)捐獻(xiàn)出WebSphere的哪一個(gè)部分成為OpenSources, 或許, 又是改寫Java世界的時(shí)刻了。

          ?

          WebLogic : 技術(shù)人的最愛
          文/jini

          1995年, BEA成立了, 初期以Tuxedo數(shù)據(jù)轉(zhuǎn)換的產(chǎn)品為基礎(chǔ), 成長(zhǎng)之迅速是歷年來最強(qiáng)的企業(yè)。 1998年, BEA推出以Java為基礎(chǔ)的網(wǎng)絡(luò)解決方案, 提供了完整的中間層架構(gòu), 更同時(shí)支持EJB 1.0 及微軟的COM組件, 方便的管理接口擄掠了工程師的心。 在IBM和Oracle尚未準(zhǔn)備好迎擊的時(shí)候, BEA已經(jīng)席卷企業(yè)應(yīng)用平臺(tái)的市場(chǎng)。 WebLogic無論在市場(chǎng)領(lǐng)先度與技術(shù)領(lǐng)導(dǎo)性與策略遠(yuǎn)觀性都優(yōu)于當(dāng)年的所有應(yīng)用服務(wù)器廠商。
          如今WebLogic不僅僅是應(yīng)用平臺(tái)服務(wù)器的名稱, 而是BEA對(duì)于整個(gè)企業(yè)解決方案的總稱, 無論是WebLogic Portal或是WebLogic Integration配合著Workshop開發(fā)環(huán)境, 來自微軟的UI開發(fā)團(tuán)隊(duì)讓W(xué)orkshop幾乎達(dá)到所見即所得。 接著, 在下一個(gè)版本之中, BEA的BeeHive開放源代碼計(jì)劃將釋出中間層控件的開發(fā)模塊, 并且與Eclipse合作共同打造新一代的開發(fā)環(huán)境。 如此強(qiáng)而有力的技術(shù)支持, 更是讓顧客愿意使用WebLogic平臺(tái)的最大原因。
          代號(hào)為“Diablo”的 WebLogic Server 9.0小惡魔已經(jīng)出現(xiàn)了, 目前雖然僅僅是BETA版, 以Portlet 方式打造的管理接口與完整且美妙的WebServices支持, 實(shí)在很難找到可以挑剔的地方, 雖然去年被IBM的技術(shù)性推銷超越了市場(chǎng)占有率, 不過接下來SOA的平臺(tái)競(jìng)爭(zhēng)現(xiàn)在才開始, BEA的LOGO也加入“Think liquid”并且推出新的AquaLogic平臺(tái)做為數(shù)據(jù)服務(wù)平臺(tái), 可見, Java的應(yīng)用服務(wù)器的戰(zhàn)爭(zhēng), 還會(huì)繼續(xù)進(jìn)行著。

          ?

          JBuilder : Java開發(fā)工具的王者
          文/劉鐵鋒

          Java的開發(fā)工具中,最出名的莫過于Borland公司的JBuilder了。對(duì)于一些沒有弄清楚開發(fā)工具與JDK的區(qū)別的Java入門者來說,JBuilder就如同Visual C++之于C++,以為JBuilder就是Java的全部。比起捆綁在服務(wù)器上銷售的JDeveloper,JBuilder應(yīng)該是唯一的僅靠自身的實(shí)力而占領(lǐng)了大部分市場(chǎng)的Java商用開發(fā)工具了。而JBuilder作為Java 開發(fā)工具的王者,其奪冠之路并非一帆風(fēng)順。直到Java的天才Blake Stone成為JBuilder的Architect之后,JBuilder 2.0以及3.0才逐漸推出。2000年3月14日,JBuilder 3.5的推出別具意義,它成為了業(yè)界第一個(gè)用純Java打造的開發(fā)工具,也風(fēng)靡了整個(gè)Java開發(fā)工具市場(chǎng)。在同年11月份推出的JBuilder 4.0乘勝追擊,沖破了50%的市場(chǎng)占有率,成為了真正Java開發(fā)工具的王者。
          Borland以每半年左右推出一個(gè)新版本的速度,讓眾多的對(duì)手倒在了沙場(chǎng)。而Microsoft因?yàn)榕cSun的官司,也使得一個(gè)強(qiáng)大的對(duì)手退出了戰(zhàn)爭(zhēng)。2001年,加入了對(duì)企業(yè)協(xié)作支持的JBuilder 5以及強(qiáng)化了團(tuán)隊(duì)開發(fā)工具的JBuilder 6打敗了最后一個(gè)對(duì)手Visual Age For Java。2002年JBuilder 7推出之后,再也沒有其他廠商與JBuilder競(jìng)爭(zhēng)。
          孤獨(dú)的王者并沒有停下腳步,在2003年到2005年間,JBuilder也仍然延續(xù)了其半年一個(gè)版本的速度,推出了8、9、10、2005四個(gè)版本。強(qiáng)大的功能以及持續(xù)的改進(jìn),也讓Java程序員多了一分對(duì)能夠在開發(fā)工具市場(chǎng)上與Microsoft血拼十?dāng)?shù)年的Borland的敬仰。

          ?

          Oracle : Java人永遠(yuǎn)的情結(jié)
          文/熊節(jié)

          在林林總總的數(shù)據(jù)庫(kù)之中,有一種尤其令人又愛又恨、印象深刻,那就是關(guān)系型數(shù)據(jù)庫(kù)市場(chǎng)的“大佬”——Oracle。
          從公司的角度,Oracle和Sun有著諸多相似之處,例如:兩家公司都擁有一位個(gè)性鮮明的CEO。早在Java誕生之初的1995年,Oracle就緊隨NetScape從而第二個(gè)獲得了Java許可證。從那以后,Oracle對(duì)Java的鼎力支持是Java能夠在企業(yè)應(yīng)用領(lǐng)域大獲成功的重要原因之一。
          所有J2EE程序員都知道,Oracle的JDBC驅(qū)動(dòng)雖然與Oracle數(shù)據(jù)庫(kù)配合良好,但在不少地方使用了專有特性。其中最為著名的就是“CLOB/BLOB問題”,諸如此類的問題給開發(fā)者帶來了很多麻煩。為了同時(shí)兼顧不同的數(shù)據(jù)庫(kù),他們不得不經(jīng)常把自己的一個(gè)DAO(數(shù)據(jù)訪問對(duì)象)寫成兩份版本:針對(duì)Oracle的版本和針對(duì)其他數(shù)據(jù)庫(kù)的版本。有不少人為了開發(fā)便利,舍棄了數(shù)據(jù)庫(kù)之間的可移植性,將自己的產(chǎn)品綁定在Oracle的專有特性上。
          Oracle提供的Java開發(fā)工具也與此大同小異。不管是數(shù)據(jù)庫(kù)內(nèi)置的Java支持還是JDeveloper IDE, Oracle的Java工具都和Oracle數(shù)據(jù)庫(kù)有著千絲萬縷的聯(lián)系。看起來,只要Oracle還是數(shù)據(jù)庫(kù)市場(chǎng)上的“頭牌”,了解、學(xué)習(xí)Oracle的專有特性,周旋于Oracle特有的問題和解決方案之中,就將仍舊是J2EE程序員在數(shù)據(jù)庫(kù)基礎(chǔ)和SQL之外的必修功課。對(duì)Oracle的愛與恨,也將仍舊是Java人心頭一個(gè)難解的情結(jié)。

          ?

          Struts、Hibernate : 讓官方框架相形失色的產(chǎn)品
          文/劉鐵鋒

          好的框架能夠讓項(xiàng)目的開發(fā)和維護(hù)更加便捷和順利。相比Sun官方標(biāo)準(zhǔn)的遲鈍以及固執(zhí),開源框架也更得到Java程序員的共鳴。Struts以及Hibernate就是這樣一類產(chǎn)品,它們簡(jiǎn)單、優(yōu)雅,更讓官方的產(chǎn)品相形失色。
          談起Struts,不可避免地就要提及MVC(Model-View-Controller)的理念。而準(zhǔn)確地講,MVC的提出卻最早源于JSP的標(biāo)準(zhǔn)。在1998年10月7號(hào),Sun發(fā)布的JSP的0.92的規(guī)范中提出的Model 2就是MVC的原型。在1999年12月Java World的大會(huì)中,Gavind Seshadri的文章最早闡述了Model 2就是一種MVC的架構(gòu),同時(shí)也提及了MVC架構(gòu)是一種最好的開發(fā)方法。2000年3月,由Craig McClanahan發(fā)布的Struts成為了最早支持MVC的框架。Struts在設(shè)計(jì)上雖然存在一些詬病,但是不可否認(rèn)的是,它使得Java Web應(yīng)用的開發(fā)更加簡(jiǎn)潔和清晰,也讓更多的程序員愛上了Java,并開始遺忘官方的JSP。時(shí)至今日,比起如WebWork、Tapestry以及Sun官方的JSF,Struts或多或少存在些不足,但是眾多成功項(xiàng)目的實(shí)施,仍然使其牢牢占據(jù)的Java Web應(yīng)用框架的首位。
          Hibernate則在某種程度上改變了人們對(duì)構(gòu)建J2EE的思路。相比其EJB的Entity Bean的映射技術(shù),Hibernate則顯得更加簡(jiǎn)潔和強(qiáng)大。五分鐘就能把Hibernate跑起來,讓更多的Java程序員享受到了開發(fā)的樂趣。第15屆Jolt大獎(jiǎng)中,最優(yōu)秀數(shù)據(jù)庫(kù)、框架以及組件的獎(jiǎng)項(xiàng)中,Hibernate當(dāng)仁不讓獲得頭籌;不僅如此, Hibernate甚至還影響了官方的標(biāo)準(zhǔn)。在眾多Java程序員翹首以待的EJB 3.0的規(guī)范中,Hibernate得到了支持。
          Java開源的繁榮不僅讓眾多Java的開發(fā)者享受到了更多的便利,甚至影響了官方的標(biāo)準(zhǔn)。恐怕這也是作為Java人獨(dú)有的樂趣之一吧。

          ?

          PetStore : J2EE人的必修課
          文/陶文

          很少有一個(gè)例子項(xiàng)目如PetStore這?般廣為人知,而這很大程度上要?dú)w功于Sun很“英明”地把PetStore做成一個(gè)只展示架構(gòu)而在性能調(diào)優(yōu)上留下了大大余地的例子。圍繞著性能話題,產(chǎn)生了頗為有趣的廠商之間以及平臺(tái)之間的Pet Wars。除去這些關(guān)于性能的流言蜚語乃至中傷,PetStore在展示J2EE1.3平臺(tái)的架構(gòu)、演示什么叫分層方面還是有著很大的功勞的。而且PetStore在架構(gòu)方面的豐富性使得其成為J2EE的那些輕量級(jí)小兄弟們展示自身的一個(gè)必選科目。
          不談那些圍繞PetStore的口水,那些數(shù)不盡的盜版,PetStore給開發(fā)新手帶來的最重大的影響,我想應(yīng)該是架構(gòu)的觀念而不是性能,也不是業(yè)務(wù)。做為一種技術(shù)的Demo,這無可非議。但是如果你是一個(gè)新手,跟著PetStore亦步亦趨地學(xué)習(xí)J2EE開發(fā),難免會(huì)陷入過度設(shè)計(jì)、華而不實(shí)之類的困境。圍繞著.NET的PetStore的克隆PetShop展開的架構(gòu)與性能的大討論,是不是也在促使我們學(xué)習(xí)新技術(shù)時(shí)應(yīng)該以解決問題為導(dǎo)向呢?特別是當(dāng)你想把一個(gè)如PetStore這般的Sample Project的技術(shù)照搬到你的現(xiàn)實(shí)世界的Real Project來時(shí)。

          posted on 2007-06-29 21:48 zYx.Tom 閱讀(203) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 互助| 仪陇县| 武陟县| 朝阳市| 桂林市| 莱州市| 吉隆县| 宿松县| 贡山| 海阳市| 建始县| 龙胜| 肃南| 普兰县| 来宾市| 丹棱县| 双牌县| 安仁县| 昆山市| 正定县| 驻马店市| 南陵县| 定边县| 章丘市| 呼和浩特市| 衡阳县| 辽阳县| 纳雍县| 丰县| 正安县| 乡宁县| 花垣县| 历史| 安庆市| 石屏县| 玛曲县| 黎城县| 蒙阴县| 沁水县| 格尔木市| 赤峰市|