至2000年底,Microsoft开始发布有关.NET这一全新的应用开发架构的细节,这些细节最初有些模糊,以至引起很多嘲笑,被视为"担心、不可靠、怀疑"(FUD)。然而,当Beta版的新版Visual
Studio--Visual
Studio.NET出现在开发者面前时,与现实相结合,.NET框架价值显而易见,而绝不是FUD。随着"冰雹"(一套Microsoft计划提供给其它厂商能兼容他们自己应用软件的网络服务)的正式公布,.NET以一套
"革命"的开发各类运用软件的新路呈现在公众眼前。实际上,作为一个不明显的举措,Microsoft也强调它将完全支持非Windows的平台,包括Unix和linux等等。其它不讲,而支持非Windows平台的承诺和增加可靠性及更简单的终端用户体验一样只不过突出了应用软件开发中另一个也同样有重大意义的逐渐的进步过程。
Halcyon Software, Inc. (http://www.halcyonsoft.com)
继成功开发了iasp(Microsoft ASP
的java构架,可将ASP运行在任何支持Java的平台)之后,针对微软提供的全新开发环境Microsoft.NET,Halcyonsoft正致力于将Microsoft.NET
进行跨平台移植。
首先,让我们基本了解一下Microsoft.NET框架和它给开发者及终端用户所暗示的内容。其二,描述Halcyonsoft针对.NET的开发起步过程,非凡是如何从Java的基础上重建.NET框架以及暂时被命名为"Instant.NET"
(iNET) 这一产品所能带来的引人注目的好处。
.NET的大体结构
总的来说,.NET可以分为三个部分:
--.NET框架--一个全新设计的开发环境,使开发者更轻易建立网络应用程序和网络服务。
--.NET产品--基于.NET平台的Microsoft开发的应用软件,包括Office和Visual
Studio。
--.NET服务--协助第三方开发者创造.NET平台服务(网络服务的范例是一套州,郡,市的税务表格,这些表格被提供给电子商务购物车的开发者,这样他们可以代理网上购物的销售税务而免去庞大的数据维护治理额外开销的担忧)Microsoft的"冰雹"起初实际上是一举将最流行的网络服务包揽于"Microsoft"这一品牌名下。
新的.NET发展框架还可以细分,大致分为三个部分:
--一个运行时引擎,被称为"公共语言运行时"(CLR),
它处理存储分配,错误限制和所有编程中碰到的繁忙工作。
--一套广泛的类库,从基础的写起,涵盖任何您所需求的功能。
--两大高阶层的发展"舞台",提供给网络应用软件(asp.net) 和常规Windows应用软件(Windows
Forms)。
有关.NET框架的各种要素及它们之间的相互关系的更具体的情况请见下列图表:
.NET框架可以缩短开发周期(代码重新使用,减少编程难题,支持多种编程语言),也可以更轻易的配置(简单的XCOPY安装成为可能),而且真正的垃圾收集器的出现使得错误减少,并且是在更灵活可靠的应用软件里。现在让我们仔细考察一下.NET框架的各个部分。
公共语言运行时(CLR)
.NET应用软件被编译到众所周知的Microsoft中间语言(MIL或者IL)
这一公共语言。CLR处理将IL编译成机器语言,在这时程序被执行。CLR体系结构有以下几个优点:
? 更少的涉及内部测量
? 广阔的工具支持
? 更简单的配置("DLL Hell"结束)
? 更精确的尺度
? 支持多种编程语言
? 拥有一个公共数据类型系统
有关CLR的特点详见下图:
当然,这些概念并不是真正意义上的革命,象碎片收集已经提出了几十年。CLR看起来像Java虚拟机,而IL类似于Java字节代码。尽管如此,但是对于习惯于开发Microsoft平台的程序员来说变化是根本的,其受益也是菲浅的。