-- 作者:admin
-- 发布时间:11/9/2004 2:26:00 AM
-- [转载].NET大迁移:风险评估
发信人: percyboy (破宝), 信区: DotNET 标 题: [转载].NET大迁移:风险评估 发信站: BBS 水木清华站 (Wed Nov 13 22:13:38 2002) .NET大迁移:风险评估 仙人掌工作室 2002-4-17 14:19:57 ------------------------------------------------------------------------------ -- 随着VS.NET的正式发布,Microsoft的.NET梦想终于如实展现在人们面前,对几乎所有以M icrosoft技术为核心的开发组织来说,它带来了不容忽视的变革。就像以前对Windows寄予 厚望一样,Microsoft现在把自己未来的重注下在了.NET的成功上。同样与以前Windows出 现时相似的是,绝大多数Microsoft技术的开发者不可避免地要转移到.NET上。认清这些简 单但关键的事实,这是评估.NET将在你的组织中扮演什么角色时首先要解决的重要问题。 除非你准备彻底放弃或背离Microsoft的软件战略,否则,对于最终迁移到以.NET为基础的 产品和体系,你只拥有很少的选择权:这是一个何时进行的问题,而不是一个是否要进行 的问题。实际上,你真正拥有的实际控制权仅仅是迁移工作的进度安排。然而,在深入分 析.NET可能在你的组织中起到哪些作用之前,首先要澄清一下本文所指的.NET具有哪些含 义。 一、澄清一些事实 Microsoft使用的“.NET”术语在不同的场合有着许多含义:它是一种展望,一种远期战略 ,一种商标,同时也不可否认地带有市场策略的成分。从最简单直接的角度来看,.NET是 Microsoft对“软件即服务”或“服务式软件”(Software as Services)这一IT战略和技 术体系的设想。从最长远的观点来看,.NET是一种占领市场的战略,在此基础上Microsof t将支持下一代以Internet为中心的应用,这些应用将充分利用当前正在浮现的新技术的优 势,例如Web服务和移动设备、无线设备等。虽然完整的、全面的.NET图像仍被市场宣传的 迷云笼罩,但在这迷云之下,一个真实坚固的新平台确实存在,这就是.NET框架。本文的 讨论正是以.NET的这一概念为基础。 对于几乎所有以Microsoft技术为基础的开发者来说,转移到.NET是不可避免的趋势。在这 种情况下,评估迁移工作的时间安排之前应该先回答这样一个问题:“我是一个积极的新 技术采用者,还是一个保守的新技术采用者?”积极的新技术采用者会把.NET视为自DOS升 级到Windows之后最重要的机遇,很自然地,他很可能把注意力集中到.NET带来的优势,而 忽略其缺点。这类最早采用新技术的人往往以积极甚至激进的策略为基础,选择最前沿的 、正在浮现之中的新技术,看重竞争优势带来的希望,轻视随之出现的风险。 .NET技术早期采用者的第一个机遇在于它具有抵御竞争威胁的能力。正如Windows曾经抵御 了因为Apple Macintosh日益流行而带来的威胁,抵御了OS/2的出现带来的重大威胁,.NE T计划在很大程度上针对的是Java带来的威胁。著名的技术市场研究公司Gartner预测,接 下来的五年中,百分之八十或更多的新电子商务应用将建立在Microsoft或Java平台技术的 基础上。很自然地,.NET的目标很大程度上是在这个百分比中尽可能地扩大Microsoft的份 额,降低Java技术在主流IT企业之间日益广泛的影响。 Microsoft通过推出一个全新的技术平台回应Java的威胁,这个新的平台在许多方面填补了 原来的空白,在一些领域(例如Web服务)甚至有所超越。对于Microsoft来说,这一举措 正当其时,因为旧的Win32/COM体系正显示出严重的时代局限性。Java威胁的出现是由于, 几年之前WWW刚刚出现时,Microsoft犯下了重大的估计错误,它仍旧坚持着以PC为中心的 计算理念,对Internet日益增长的重要性视而不见。在很大程度上,推出.NET新平台这一 重大举措的驱动力量来自甩下旧包袱的需要,因为旧包袱拖了Microsoft与Java展开全面竞 争的后腿。 二、评估.NET vs. Java 旧的分布式Internet体系(DNA,Distributed Internet Architecture)建立在Win32和C OM等技术的基础上,它就象是一条橡皮筋,在过去的十多年里,从最初的以PC为中心的计 算模式不断拉伸和扭曲。今天,这条橡皮筋已经拉伸到了极限,该是来一次大变革的时候 了。与DNA不同,Java出现在人们面前只有六年之久,既得天时也得地利,紧紧抓住了Int ernet大潮的机遇。Java带来了许多革命性的编程概念,它们与新兴的Internet和Web编程 模式紧密结合,例如内建的安全沙箱(Security Sandbox)、可移植的代码,以及直接构 造到语言和库里面的强大的Web、TCP/IP编程支持。另一方面,Microsoft只给出了一些充 满缺陷的答案,例如意图作为Internet组件使用的ActiveX控件。然而,.NET不再是以PC为 中心的计算技术的简单扩展,它代表着一种长远意义上的划时代的飞跃,成功地为人们带 来一条全新的橡皮筋——具有足够的灵活性和伸缩能力,足够用上好几年。 令人欣慰的是,.NET的价值取向并不完全集中在与Java的对抗上。Microsoft充分利用了. NET作为一个全新基础平台的优势,在许多领域有超越Java之势。特别是在对Web服务技术 的支持上,这一点尤其突出。在这一领域,Microsoft已经引起人们的密切关注,对于简单 对象访问协议(SOAP,Simple Object Access Protocol)和统一描述、发现和集成协议( UDDI,Universal Description、Discovery and Integration)之类的下一代技术平台, Microsoft已摘取到预言家的桂冠。据Gartner估计,在下一年中,人们可以看到.NET比大 多数与之竞争的Java厂商提供更好的Web服务支持;然而,在两年之内,这些竞争者中的大 多数也将以自己更健壮的功能提供对Web服务开发更有效的支持。 如果你有可能成为.NET技术的早期采用者,请仔细审视.NET框架的新特色,既要了解类似 的Java方案带来的竞争风险,也要了解超越“传统的”COM实现方案所带来的竞争优势。此 外,应当深入地分析应用开发项目的时间因素。你正在启动的开发项目是否会在2002年上 半年正式发布?或者,你是否正在启动一个直到本年或下一年末才能完成的项目?正式推 出产品之前的时间越长,今天你追随.NET的必要性就越大。 三、认清风险 正如积极的新技术采用者在做技术决策时很大程度上倾向于高风险、高回报的机遇,也有 一些新技术采用者以保守的眼光看待.NET。这些新技术的采用者总是在看到新技术带来的 机遇的同时,对随之而来的风险作大量的研究,他们眼中的.NET不仅代表着一次重要的机 遇,同时也伴随着一些重大的风险。 首先,对于所有使用Microsoft技术的开发者来说,转移到.NET意味着面临一个重大的技术 断层,因为.NET要求有全新的技能、工具、体系和从头开始实践。此外,目前的.NET几乎 完全是来自单一厂商的1.0版本的软件,而这个厂商的1.0版软件有着可怕的历史记录,甚 至同一句话中提到“Microsoft”和“1.0版本”这两个词都会让全世界的程序员感到脊梁 骨上的寒意。然而,在Micrsooft的技术世界中,接受这些风险的挑战并非没有先例;当开 发者从DOS转到Windows,从16位Windows转到32位Windows时,也曾面临类似的挑战。转换 到.NET只是在同一条路上再走一遍,而这条路对于使用Microsoft技术的开发者来说并不陌 生——转移到.NET确实是一个挑战,但对于大部分开发者来说存在的障碍不是不可克服的 。 虽然.NET带来的机遇促使人们尽快采用.NET,但你还是应该深入严肃地检查一下是否已经 为潜在的挑战做好了准备,因为.NET毕竟是一个全新的、尚未充分发展和成熟的平台。例 如,.NET引入了一些新的特色,包括所有语言之间统一的类库和一个经过整理的组件模型 ,但这些特色付出了向后兼容的代价。应该做好最坏的打算,因为如果要把现有的应用改 造成真正的.NET实现,可能有大量的代码需要重新编写。 四、结束语 .NET为人们提供了一个拥抱下一代Internet、电子商务、移动和无线IT方案的机遇。然而 ,不可否认的是,它是对现有体系的一次根本性的变革,要求重新编写大量的应用代码, 要求重新对开发人员进行培训以及面对一种尚未充分发展和成熟的技术所带来的风险。好 在.NET迁移之路并非一个非有即无的选择,Microsoft提供了紧密连接传统COM+体系和.NE T平台的桥梁,允许开发者按照渐进的方式逐步引入.NET技术。实际上,至少在.NET推出之 后的前两年,在主流开发中占据统治地位的必然是.NET和现有技术共存的混合开发模式。 因此,当你考虑.NET迁移的时间安排时,应该先回答本文开头提出的问题,“我是一个积 极的新技术采用者,还是一个保守的新技术采用者?”,确定是否有直接的、令人信服的 、经得起推敲的理由要求立即转到.NET平台上。如果不是这样的话,在接下来的几个月时 间中,选择更稳健、谨慎的策略对你来说也许更理想。 对于我们之中的大多数人来说,答案在于这两个极端之间。正如Gartner对其客户的忠告, 为了在风险和回报之间取得平衡,应当避免在VS.NET正式发布后的六到九个月之内让运行 关键任务的系统过分地依赖于.NET框架技术;当然,如果你今天启动了一个持续八个月左 右的开发项目,在采用.NET技术的策略上也许应该更积极一些。不管你实际采用了哪种策 略,都应当立即开始借助原型工程和规模较小的、非关键任务的工程熟悉和研究.NET,了 解.NET的哪些特色对于你的组织来说最有意义。对于大多数开发者来说,最现实的迁移规 划不是一个非有即无的选择,而应该是一个渐进的过程,应该随着时间的推移按照一种与 现有COM服务混合应用的模式引入.NET框架技术。 percyboy 转自 http://www.ccw.com.cn/htm/center/app/02_4_17_6.asp -- ※ 修改:·percyboy 於 Nov 13 22:16:57 2002 修改本文·[FROM: 202.196.65.171] ※ 来源:·BBS 水木清华站 smth.org·[FROM: 202.196.65.171] 上一篇 返回上一页 回到目录 回到页首 下一篇
|