学 员 通 道
注册名:
密 码:
  你的位置:网校首页>>认证资讯>>认证速递

.NET——新一代开发环境

来源:微软中国社区 天极网校 整理

  未来的网络世界离不开Web Services。而.NET就是与Web Services密不可分的另一个概念。那么,什么是.NET?

  .NET 是微软推出的一个开发和运行软件的新环境。更准确的说,.NET是一个XML Web Services平台。如果这样仍然显得晦涩,那就让我们先从Web Services说起。

  什么是"Web Services"?正如上面的例子中所展现的,Web Services是"未来的计算"。Web Services是可分布的、独立的应用单元--有一点类似"Web Component"的概念,但是,建立在开放的Internet 标准(HTTP和XML)之上的Web Services具有更强大的功能:Web Services使应用程序之间可以实现无缝结合:无论各个应用程序具体采用什么编程语言、当前运行在哪一种系统平台上,它们都可以通过互联网进行通信和交换数据,并且对用户而言,这种通信是透明的。借用微软Sanjay Parthasarathy的话,要实现下一代的分布式计算,最基本的一点就是要让所有的东西都成为Web Services。

  既然Web Services如此重要,自然就迫切需要有一个可以方便地开发、集成Web Services的平台,这个平台就是我们要介绍的".NET"。
具体地说,.NET包括:

  a)一个用来建立 .NET 体验的软件平台。此平台指的是运行数据库的服务器、Web 服务器,以及其他一些系统。例如Exchange 这样的邮件系统和SQL Server 这样的数据库,以及用来在企业中组织信息的 BizTalk Server,用来管理运行 .NET 的服务器的 Application Center,它们都是.NET 的一部分。
  b)一个编程模型和一些工具,以用来建立和集成Web Service和网络应用程序。这个模型就是常说的".NET Framework"。
  c)一套可编程Web Services。用户可以使用任何设备访问这些Web Services。它们其实是编程模型、工具和平台的最终结果。
  对于开发人员来说,要想掌握.NET开发,最重要的就是掌握好.NET的编程模型--.NET Framework。下面就让我们进一步窥探一下.NET Framework。

.NET Framework
  在系统架构中,.NET Framework的位置位于.NET工具(例如Visual Studio.NET)之下,而在.NET所用的通讯协议(例如XML、SOAP)之上。
  .NET Framework使开发人员可以更容易建立网络应用程序和Web Services,它提供了生成、部署、扩展和维护这些Web Services的途径。
  下图显示了.NET Framework的组成:

  从上往下看,依次为:
  1.最上方是开发人员可以使用的各种语言。
  .NET对于各种语言是完全独立的。这一点与J2EE不同:J2EE只能使用Java语言来开发,而.NET除了Java语言,基本上所有其他语言都可以混用,因此开发人员可以选择自己最擅长的程序语言来解决问题。这一点将在CLR中继续说明。
  2.ASP .NET是Microsoft .NET中的网络编程结构,它使得建造、运行和发布网络应用变得非常方便和高效。我们可以从以下几个方面来了解ASP .NET。
  1)ASP .NET网络表单
  ASP .NET网络表单的设计目的就是使得开发者能够非常容易的创建网络表单。它有以下几个特色:(1)它把VB中的快速开发模型引入到网络开发中来,各种控件可拖曳,从而大大简化了网络应用的开发。(2)ASP.NET采用Code-behind方式,将代码和内容分开,从而避免了现在的ASP开发中内容和脚本交错导致的维护困难,同时也使得开发人员和设计人员能够更好的分工合作,提高了开发效率。(3)ASP .NET中引入了服务器端控件,大大提高了构建网络表单效率。此外,服务器端控件是可扩展的,开发者可以建造自己需要的的服务器端控件。
  2)ASP .NET Web Services
  如前所述,Web Service是下一代可编程网络的核心。在ASP .NET中,建造和使用Web Services都非常方便:建造Web Services就是编写一个后缀为.ASMX的文件,Web Services的建造者不需要了解SOAP,XML的细节,只需要把精力集中在自己的服务本身,这也为独立软件服务开发商提供了很好的机会;使用Web Services最简单的方式就是使用HTTP协议--直接访问Web Services(.ASMX文件)的URL即可,当然还可以通过SOAP在自己的应用中更灵活的使用Web Services。
  3)ASP.NET应用框架
  ASP.NET不再是解释执行,而是由JIT(Just In Time)编译器编译运行,再加上灵活的缓冲技术,从根本上提高了性能。并且,由于ASP.NET的应用框架基于CLR,发布一个网络应用,仅仅是一个拷贝文件的过程,即使是组件的发布也是如此,更新和删除网络应用,可以直接替换/删除文件;开发者可以将应用的配置信息存放XML格式的文件(web.config)中,管理员和开发者对应用程序的管理可以分开进行。此外,ASP.NET提供了多样的认证和安全管理方式;在可靠性等多方面都有很大提高。
  3.新一代的数据库访问技术ADO.NET。
  ADO.NET是微软在.NET平台下提出的新的数据库访问模型,与ADO相比ADO.NET与ADO有很大的不同。它是一个全新的数据访问模型:
  1)ADO.NET 遵循更通用的原则,不再仅仅专门面向数据库。
  2)ADO.NET集合了所有允许数据处理的类,这些类表示具有典型数据库功能(如索引、排序和视图)的数据容器对象。
  3)ADO.NET 是 .NET 数据库应用程序的权威解决方案,而且从总体设计上来看,它不象 ADO 模型那样以数据库为中心,而采纳了以数据为中心的原则,例如,在ADO中,开发人员惯于使用游标从数据库中抽取表的记录,但ADO.NET不支持游标的显式实现,它提供了新的编程接口从数据源中抽取数据。这是 ADO.NET 的一大特点。
  4.功能强大的基础类库。
类库是.NET提供给开发人员的编程接口。它与通用语言运行时紧密接合在一起。该类库里面包括了对ADO.NET、XML、SQL、安全性和多线程处理等等的支持。基础类库也让你能够访问操作系统提供的服务,如网络、多线程、图形和加密机制。应该指出,.NET的强大是与它的类库分不开的。
  5.通用语言运行时,即CLR(Common Language Runtime)。
.NET 给开发人员带来了一种全新的开发框架,而CLR是这个框架的基础和核心。CLR具有如下的功能和特性:
  1)统一和简化的编程模型,用户不必再迷惑于Win32 API和COM这样复杂的编程模型。
  2)提供完善的安全系统和配置系统,有效地避免了"遭遇DLL Hell"-- 即:DLL的版本和更新问题,从而大大简化了应用程序的发布和升级。
  3)正是由于CLR,.NET才得以消除编程语言的差别,例如我们甚至可以在VB中使用C++编写的类。这是由于.NET中基于CLR开发的是受控代码,它的运行步骤大致为:首先使用一种CLR支持的编程语言编写源代码,然后将之编译成独立于机器的微软中间语言(Microsoft Intermediate Language),同时产生所需的元数据,在代码运行时,再使用JIT编译器生成具体的机器代码执行。这种运行方式,保证了.NET的编程语言独立性。
4)自动的内存和资源管理等等。就像Java提供的著名的垃圾回收机制一样,.NET的开发人员也不再需要特别留意资源的释放,CLR会自动对此进行管理。

  可见,Microsoft .NET Framework在CLR的基础上,给开发人员提供了完善的基础类库、新一代的数据库访问技术ADO.NET、网络开发技术ASP.NET,开发人员可以使用多种语言来快速构建新一代的网络应用。可以预言,将会有越来越多的开发人员采用.NET进行软件开发。.NET将会带动一个新的网络世界。

相关链接:

 

ml>