1.1 什么是.NET Framework
.NET平台是由Microsoft推出的全新的应用程序开发平台,可用来构建和运行新一代的Microsoft Windows和Web应用程序。它建立在开放体系结构基础上,集Microsoft在软件领域的主要技术成就于一身。.NET平台包括4种核心技术:.NET Fra mework、.NET企业服务器、构建模块服务、Visual Studio.NET。
其中,.NET Framework是.NET平台核心中的核心,它为.NET平台下应用程序的运行提供基本框架,如果把Windows操作系统比作一幢摩天大楼的地基,那么.NET Framework就是摩天大楼中由钢筋和混凝土搭成的框架。
.NET企业服务器是Microsoft为企事业单位提供的技术服务中的一部分,它包括Microsoft Bi zTalk Server、Microsoft C ommerce Server、Host Inte gration Serv er、Exchange Server、SQL Server等技术的开发工具包。
构建模块服务是Microsoft提供的COM+组件服务和XML Web服务技术,利用构建模块服务开发应用程序模块可迅速地组装一个功能完备的软件。
Visual S tudio.NET是.NET平台的主要开发工具,由于.NET平台是建立在开放体系结构基础之上的,因此,应用程序开发人员也可以使用其他开发工具。
1.1.1 .NET Framework结构
.NET Framework具有两个主要组件:公共语言运行时(Common Language Runtime,CLR)和 .N ET Framework类库。除此之外,还包括ADO.NET、ASP.NET、XML Web Servise等。
● 公共语言运行时(CLR)。公共语言运行时是.NET Fram ework的基础,是应用程序与操作系统之间的“中间人”,它为应用程序提供内存管理、线程管理和远程处理等核心服务。在.NET平台上,用户无论使用哪一种编程语言编写的程序,在编译时,语言编译器都会把它翻译成MSIL(微软中间语言代码),在运行应用程序时,公共语言运行时自动把中间语言代码再次翻译成计算机操作系统所能识别的机器语言代码,之后运行并返回运行结果。因此,公共语言运行时是应用程序的托管环境,对于这种在公共语言运行时基础上运行的应用程序,我们称为托管应用程序,而传统的直接在操作系统基础上运行的应用程序则称为非托管应用程序。
● .NET Framework类库。.NET Framework类库是一个综合性的面向对象的可重用类型集合,利用它可以开发多种应用程序,包括传统的命令行或图形用户界面(GUI)应用程序,也包括Web应用程序。
● ADO.NET。ADO.NET是.NET Framework提供的微软新一代的面向对象的数据处理技术,利用它可以简便、快捷地开发数据库应用程序。
● ASP.NET。ASP.NET是.NET Fra mework提供的全新的Web应用程序开发技术,利用它开发Web应用程序如同开发Windows应用程序一样简单。
● XML Web Service。XML Web Service是一种能够在Internet环境中直接调用的组件,.NET Framework提供了创建、测试和部署XML Web Service的工具和类。
1.1.2 .NET Framework的优点
在.NET平台诞生之前,虽然Internet已经出现,但很少有应用程序能运行在各种不同类型的客户端上,也不能和其他应用程序进行无缝集成。这种局限性导致开发人员需要花费大量的时间去改写应用程序,以保证它们能在各种客户端和平台上运行,而不是利用这些时间去设计新的应用程序。.NET Framework的最大特点就在于它为应用程序开发人员提供了一个真正与平台无关的开发环境。使用.NET Framework开发应用程序有以下优点。
1.基于Web的标准
.NET Framework完全支持现有的Internet技术,包括HTML(超文本标记语言)、HTTP(超文本传输协议)、XML(可扩展标记语言)、SOAP(简单对象访问协议)、XSLT(可扩展样式表语言转换)、XPath(XML路径语言)和其他Web标准。
2.使用统一的应用程序模型
任何与.NET兼容的语言都可以使用.NET Framework类库。.NET Framework为Windows应用程序、Web应用程序和XML W eb服务提供了统一的应用程序模型,因此,同一段代码可被这些应用程序无障碍地使用。
3.便于开发人员使用
在.NET Framework中,代码被组织在不同的命名空间和类中,而命名空间采用树形结构,以便开发人员引用。当开发人员企图调用.NET Framework类库的类时,只需将该类属性命名空间添加到引用解决方案中即可。
4.可扩展类
.NET Framework提供了通用类型系统,它根据面向对象的思想把一个命名空间或类中代码的实现细节隐藏,开发人员可以通过继承来访问类库中的类,也可以扩展类库中的类,甚至于构建自己的类库。