见资源 By Brian Noyes 当一种新技术出现的时候,对于公司和开发者来说都是令人激动且有紧迫感的时刻。开发者们想学习新" name="description" />
下载本期杂志代码 javascript:openWindowRes('http://www.fawcette.com/china/DotNetMagazine/2001_12/MigrateToNET/resource.asp')">见资源 |
当一种新技术出现的时候,对于公司和开发者来说都是令人激动且有紧迫感的时刻。开发者们想学习新的东西——有意思的东西,能保证使他们的生活更加轻松的东西。他们想处于技术工作的最前沿。管理人员和市场人员也急于了解新技术,以便在市场宣传中做得更好,并且使公司更具有竞争力,通过对新技术的使用,使公司获得更多的回报。没有人希望公司仍然用旧的、过时的东西。
对于基于Windows平台和其他平台的开发者来说,.NET 正在成为一种令人激动的,具有革命性的——或者最起码说有发展性的新技术。无论您是Web开发者,组件开发者,数据开发者,VB GUI 开发者,或者任何基于Windows平台的开发者,.NET都承诺使您更好地完成您的工作。
|
尝试基于组件的框架结构
对于大多数你正在开发的系统而言,你不必放弃你已开发好的的软件,而一步转向.NET。通过.NET的互用性,你可用.NET所提供的语言,工具,技术进行开发,开发出的新模块可以和以前的模块很好的协同工作。
互用性存在于.NET的许多层面,他们包括针对C++, COM/COM+ 的管理扩展,管理提供者及平台调用(P/Invoke)。所有这些互用性可以根据你要移植的代码的类型或者功能, 轻松地使你把你的框架转换成.NET 框架,而不需要重写所有代码。
clearcase/" target="_blank" >cccc99>商业应用 节约成本将会增加收入 当你分析将要开发的工程来决定他们那个适合用.NET来开发从而获得更高的效益时,你会看一看公司内部项目和他们的开发成本.... |
如果你现在有幸用预发布的.NET版本进行开发的话,那么做好转变的准备吧。.NET架构和语言可使面向组件的开发成为一件轻松的事。丰富的架构库可使你的代码更加高效。用多语言的软件公司也会受益于.NET,因为所有的.NET开发者都用同一个开发库(所用语法会根据语言的不同会有很小的差别),所以他们可以共享在开发过程中所获得的经验。相反,在当前的多语言开发中,如VB开发者,脚本开发者,C++开发者用的是不同的库和技术。
如果现在不能用.NET开发,那么尽量把你要实现的功能做成COM或者COM+组件。如果你这样做了,你就可以利用.NET的COM互用性在.NET中直接使用他们。使你的代码结构尽量接近COM组件的结构,也可以使你在日后方便地把他们转换成.NET组件,如果你愿意的话(参照图1)。
.NET的另外一个重要特性是:它支持跨语言的开发。你现在可以从Visual Studio.NET 所带的语言——C#, C++, VB 和JScript, 或者第三方为.NET所开发的语言中选择适合你的。但是,即使你不想学习一种全新的语言,如C#,你仍然需要一些在.NET中写代码的技巧。
C++开发者可以通过C++(MC++) 管理扩展编写.NET代码。但不幸的是,为了使用MC++ ,你必须学习新的语言扩展、关键字、属性,以及哪些C++语法在.NET中是合法的,那就意味着你无论如何要学习一种新的语言。而且因为你的代码中有了那些额外的东西,所以很难被读懂。
尽管我有十多年的C++编程经验,我仍感到在开发.NET应用程序的过程中C#是一种高效的,简单的语言。相对于C#,MC++ 提供更强大的功能,而且在把你的程序分割成本地代码和受管代码时,更加简单、灵活。在一些对程序运行效率要求很严格的场合,你可以用C++写本地代码应用程序。如果你想用C++写本地应用程序及COM组件,那么在.NET的开发中你仍需要使用MC++。ALT Server是一种通过使用ALT来创建高性能Web Services的新技术,它是基于C++的,并附带有一些ALT库。
|
JScript 也被改进成为一种全面支持.NET的语言,但它可能主要被用在基于.NET的Web应用程序中,而不是单独的应用程序。
在.NET中C#是一种崭新的语言,它提供像C++, Java,和Smalltalk等以前的面向对象语言所提供的特性及功能,实际上C#是一种把他们揉和在一起,类似C++语法的新语言。所以很好解释为什么许多C++甚至VB开发者选择C#作为他们的.NET开发首选语言。C#简单易用。微软的大部分的.NET构架类库用C#写,从这一点也可以看出C#的重要性。
你必须首先为你的.NET开发选择一种语言,然后培训员工使用这种语言及和.NET相关的一些新特性,这一步是很关键的。在允许开发者选择他们喜欢的语言方面,你有比以前更大的灵活性。不过你需要有配置管理这方面的考虑,很多公司会在用好几种语言写成的代码面前不知所措。但是你会发现新的机遇,它能在你的不同项目中共享代码。比如,对一个主要由面向组件的C++组成的现有项目来说,有许多工作要做,如果你想让你的VB开发人员用现有的技术来做一些辅助工作的话,那是比较困难的,但是如果用.NET技术,那就很容易了。