1、空前繁榮的開源世界
大致2000年以前,Java世界還是Sun一言九鼎,唯我獨(dú)尊的時(shí)代。Sun發(fā)布的任何規(guī)范和標(biāo)準(zhǔn)都無一例外地被Java社區(qū)有意無意的追捧著,Java世界沉浸在一片歌功頌德,前擁后簇的氛圍里。IBM,Bea,Oracle這些Java陣營(yíng)的代表者也都為能最先最快實(shí)現(xiàn)Sun的各種規(guī)范而彈冠相慶。
但這三四年來,Java的列車駛進(jìn)了春秋戰(zhàn)國(guó)百家爭(zhēng)鳴,百花齊放的時(shí)代,Apache,JBoss,opensymphony,Eclipse,Codehaus等開源組織個(gè)個(gè)門庭若市,車水馬龍。Java世界似乎天天在過年——張燈結(jié)彩,新桃換舊符。打開theserverside.com網(wǎng)站,每天映入眼簾是一條條各種開源項(xiàng)目發(fā)布、升級(jí)的新聞。雖然嘈雜了些,但卻異彩紛呈,驚艷四座。在Java世界里,十室之內(nèi)必有隱士,十步之內(nèi)必有芳草,有才華的程序員太多了,抑或懷才的程序員被獨(dú)裁式的統(tǒng)治壓抑太久了,一旦找到了海德公園,龐涓、孫臏、蘇秦、張儀式的高手紛紛走出隱居的鬼谷,在開源舞臺(tái)上勁舞一支,高歌一曲,用一個(gè)個(gè)開源項(xiàng)目彰顯著自己獨(dú)特的魅力。
從客戶端到數(shù)據(jù)庫(kù),從頁(yè)面流程控制到業(yè)務(wù)流程控制,從全文搜索到地圖搜索,從到博客,在各種應(yīng)用領(lǐng)域你都可以方便地找到多個(gè)相似的Java開源框架。開源框架的空前繁榮有力的促進(jìn)了Java技術(shù)的交流和分享。一些面向開源的社區(qū),紛紛建立,國(guó)內(nèi)比較著名的就有滿江紅開源、中文Spring、JavaScud開源平臺(tái)、JavaEye社區(qū)等,宣講、爭(zhēng)論、協(xié)作、互動(dòng),無數(shù)激情和智慧碰撞出耀眼的火花。
隨著開源項(xiàng)目的日益增多,國(guó)內(nèi)甚至出現(xiàn)了象open-open.com Java開源大全的匯總整理網(wǎng)站,它如一個(gè)開源項(xiàng)目的大集市,將開源項(xiàng)目分類整理,提供簡(jiǎn)要的描述說明信息,方便使用者了解、查詢和比較。
開源項(xiàng)目的繁榮還為技術(shù)圖書業(yè)創(chuàng)造了機(jī)會(huì),不管是國(guó)外的Amazon,還是china-pub或dearbook,開源框架或產(chǎn)品的技術(shù)圖書,如Spring,Hibernate,Struts,Eclipse等等都成為榮登榜首的暢銷先鋒。
這場(chǎng)幾乎于民間的開源颶風(fēng)給開發(fā)者和CTO們的思路和決策帶來了巨大的影響,據(jù)Bea的調(diào)查,全球排名前2000家軟件開發(fā)公司中有70%以上在使用一種或多種開源框架——多達(dá)28%的公司在開發(fā)環(huán)境中使用了一種以上的應(yīng)用服務(wù)器。
同時(shí)開源也給走傳統(tǒng)路線的Java巨頭們帶來戰(zhàn)略性的影響:Sun去年宣布將其旗艦產(chǎn)品——Solaris開源;去年IBM向第三方廠商開放了其高性能通用并行文件系統(tǒng)(GPFS)的源代碼;Unisys也改變企業(yè)戰(zhàn)略定位投入開源懷抱等等不勝枚舉,它們紛紛將營(yíng)利模式從原來的產(chǎn)品銷售調(diào)整為支持與服務(wù)。
2、開源框架帶來的煩惱
雖然開源的框架、類庫(kù)越來越豐富,可供選擇的替代者越來越多,但Java程序員卻感覺自己慢慢陷入到了技術(shù)的漩渦之中:因?yàn)樗麄儼l(fā)現(xiàn)只要一段時(shí)間不關(guān)注開源社區(qū),就有潮水般陌生的技術(shù)框架、專業(yè)術(shù)語(yǔ)、英文縮略詞挾裹著一團(tuán)團(tuán)亢奮的熱浪將自己淹沒,讓他們覺得隨時(shí)都有被Java世界拋棄的危險(xiǎn)。許多年紀(jì)稍大的程序員甚至覺得職位轉(zhuǎn)換,甩掉技術(shù)干管理已經(jīng)時(shí)不我待。
選擇的困惑
雨后春筍般涌現(xiàn)的開源框架都聲稱自己是最好的,有過多次因盲從于技術(shù)鼓吹而失望傷心的經(jīng)歷后,現(xiàn)在的開發(fā)者都變得成熟理智了,他們不會(huì)輕易相信某個(gè)框架自身的承諾,不會(huì)輕易附和他人的宣傳,這確實(shí)是件好事。為了作出理智的選擇,他們往往要自己親自摸索以做出評(píng)判。
有時(shí),我們會(huì)發(fā)現(xiàn)向上司推薦一個(gè)框架已經(jīng)變成一件困難的事情,因?yàn)樯纤緯?huì)冒出各種各樣的問題:如Webwork比Struts好在哪里?Hibernate和iBatis有什么區(qū)別?OpenWFE比之jBpm有什么優(yōu)勢(shì)等等。所以要確定一個(gè)框架時(shí),往往需要將相似的框架都研究一遍,以便有充足的理由讓上司相信我們的選擇是最優(yōu)的。
但是,要將同類的框架都做一次研究并比較優(yōu)劣并非易事,如開源工作流引擎就有Willow,OpenWFE,jBpm,Werkflow,OSWorkflow等不下30余種的框架,炫耀的聲音一個(gè)比一個(gè)響亮。每種框架都有自己的設(shè)計(jì)思路和實(shí)現(xiàn)方案,況且這種技術(shù)預(yù)研性的工作,又不可能在項(xiàng)目周期內(nèi)占用太多的時(shí)間,而不深入預(yù)研又不可能客觀地作出評(píng)判,所以往往是熬紅的雙眼依然帶著迷茫的目光。
此外,用人單位為了減少新員工的培訓(xùn)時(shí)間,對(duì)求職者往往有明確的框架使用技能和經(jīng)驗(yàn)的要求。求職者為了能找到一個(gè)好工作,不得不逼迫自己學(xué)習(xí)更多的框架,以便讓自己擁有更多的求職機(jī)會(huì)。 mda.com
搭配的困難
開源的繁榮雖然給各個(gè)領(lǐng)域都造就了許多優(yōu)秀的框架,如Spring,Struts,Hibernate,Lucene、OSCache等等,但卻沒有出現(xiàn)一個(gè)一站式,統(tǒng)管全局的整合開發(fā)框架。開發(fā)者在享用大餐之前,事先得充當(dāng)大櫥的角色,將這些鹽,油、醬、菜按合理的方式調(diào)配好。
轉(zhuǎn)帖于:軟件水平考試_考試吧
版權(quán)聲明 --------------------------------------------------------------------------------------
如果
軟件水平考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系
,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本
軟件水平考試網(wǎng)內(nèi)容,請(qǐng)注明出處。