在这篇文章中,我们将要探讨Java与Ruby语言迁移时风险预测方面的问题。
通常来说,“使用Ruby具有风险”是一种普遍的看法,这存在一定的原因。因为使用新的语言天生是有风险的。随着Ruby on Rails逐步进入到主流的开发领域中,这样的风险将会随时间逐渐降低,因为有逐步增长的开发者群、组件(或称作gems和plug-ins)相关的书籍、以及业务合作伙伴与你沟通交流。但同时你也可以听到主流的观点指出“使用Java是安全的”。对于这种的观点,我持有强烈的反对意见。随着语言的膨胀,这样的风险通常也会增长。为了便于理解在目前在这些观点上正发生什么变化,投入点精力去研究Java最初的应用情况是值得的。
新技术采用概况
许多分析家拥有技术应用所需的描述模型。其中最为流行的模型是定义在Ruby的Web开发框架Iowa中,用来描述农产品的应用,稍后在一本由Geoffrey A. Moore写作的名为《跨越鸿沟》(Crossing the Chasm)的书中,被用来描述技术内容。在书中,Moore分析了技术应用周期中存在着的五个截然不同的群体:
技术专家。这个群体倾向于采用新的技术。任何一种有前途的技术都会引起这个群体的注意。
先行采纳者。不管这项技术是否在主流技术中取得成功,这个群体都将会采用新的技术来提升竞争优势。
实用主义者。一旦新的技术进入主流应用,或是有足够陡峭的增长曲线来保证技术将得到广泛采用,那么实用主义者就会积极采用新的技术。
保守派。只有新技术成为必须的时候,他们才会考虑采用新的技术。
怀疑论者。这个群体可能很晚才会采用新的技术,或者也可能永远只使用某一特定技术。
Moore指出,技术应用的关键之处在于团队中是否存在实用主义者。因为实用主义者需要新技术大规模的应用,这个中间群体希望看到其他务实派在团队做出承诺之前就使用新的技术。这是一个类似于《第二十二条军规》书中所描述的现象,因为务实派们都会相互依赖的存在。出于这样的原因,在先行采纳者排列在技术专家之后和务实派之前,你会经常在市场接受度曲线中看到一种下降的趋势。Moore将这种下降称之为鸿沟倾向,并且这种想法应出于围绕任何新技术的风险讨论的中心。