在這篇文章中,我們將要探討Java與Ruby語(yǔ)言遷移時(shí)風(fēng)險(xiǎn)預(yù)測(cè)方面的問(wèn)題。
通常來(lái)說(shuō),“使用Ruby具有風(fēng)險(xiǎn)”是一種普遍的看法,這存在一定的原因。因?yàn)槭褂眯碌恼Z(yǔ)言天生是有風(fēng)險(xiǎn)的。隨著Ruby on Rails逐步進(jìn)入到主流的開(kāi)發(fā)領(lǐng)域中,這樣的風(fēng)險(xiǎn)將會(huì)隨時(shí)間逐漸降低,因?yàn)橛兄鸩皆鲩L(zhǎng)的開(kāi)發(fā)者群、組件(或稱(chēng)作gems和plug-ins)相關(guān)的書(shū)籍、以及業(yè)務(wù)合作伙伴與你溝通交流。但同時(shí)你也可以聽(tīng)到主流的觀點(diǎn)指出“使用Java是安全的”。對(duì)于這種的觀點(diǎn),我持有強(qiáng)烈的反對(duì)意見(jiàn)。隨著語(yǔ)言的膨脹,這樣的風(fēng)險(xiǎn)通常也會(huì)增長(zhǎng)。為了便于理解在目前在這些觀點(diǎn)上正發(fā)生什么變化,投入點(diǎn)精力去研究Java最初的應(yīng)用情況是值得的。
新技術(shù)采用概況
許多分析家擁有技術(shù)應(yīng)用所需的描述模型。其中最為流行的模型是定義在Ruby的Web開(kāi)發(fā)框架Iowa中,用來(lái)描述農(nóng)產(chǎn)品的應(yīng)用,稍后在一本由Geoffrey A. Moore寫(xiě)作的名為《跨越鴻溝》(Crossing the Chasm)的書(shū)中,被用來(lái)描述技術(shù)內(nèi)容。在書(shū)中,Moore分析了技術(shù)應(yīng)用周期中存在著的五個(gè)截然不同的群體:
技術(shù)專(zhuān)家。這個(gè)群體傾向于采用新的技術(shù)。任何一種有前途的技術(shù)都會(huì)引起這個(gè)群體的注意。
先行采納者。不管這項(xiàng)技術(shù)是否在主流技術(shù)中取得成功,這個(gè)群體都將會(huì)采用新的技術(shù)來(lái)提升競(jìng)爭(zhēng)優(yōu)勢(shì)。
實(shí)用主義者。一旦新的技術(shù)進(jìn)入主流應(yīng)用,或是有足夠陡峭的增長(zhǎng)曲線來(lái)保證技術(shù)將得到廣泛采用,那么實(shí)用主義者就會(huì)積極采用新的技術(shù)。
保守派。只有新技術(shù)成為必須的時(shí)候,他們才會(huì)考慮采用新的技術(shù)。
懷疑論者。這個(gè)群體可能很晚才會(huì)采用新的技術(shù),或者也可能永遠(yuǎn)只使用某一特定技術(shù)。
Moore指出,技術(shù)應(yīng)用的關(guān)鍵之處在于團(tuán)隊(duì)中是否存在實(shí)用主義者。因?yàn)閷?shí)用主義者需要新技術(shù)大規(guī)模的應(yīng)用,這個(gè)中間群體希望看到其他務(wù)實(shí)派在團(tuán)隊(duì)做出承諾之前就使用新的技術(shù)。這是一個(gè)類(lèi)似于《第二十二條軍規(guī)》書(shū)中所描述的現(xiàn)象,因?yàn)閯?wù)實(shí)派們都會(huì)相互依賴(lài)的存在。出于這樣的原因,在先行采納者排列在技術(shù)專(zhuān)家之后和務(wù)實(shí)派之前,你會(huì)經(jīng)常在市場(chǎng)接受度曲線中看到一種下降的趨勢(shì)。Moore將這種下降稱(chēng)之為鴻溝傾向,并且這種想法應(yīng)出于圍繞任何新技術(shù)的風(fēng)險(xiǎn)討論的中心。