.net的过去、现在和未来

时间:2021-07-08 06:22:41


.NET Framework发展状况
一、2000-11  发行第一个版本 .NET Framework 1.0 Beta
NET Framework现主要由以下几部分组成:
(1).包括五种正式的语言编译器(C#,Visual Basic,托管 C++,J#和Jscript 脚本语言等).
(2).框架类库(Framework Class Library,FCL)由很多相关互联的类库组成,支持Windows应用程序.Web应用程度.Web服务和数据访问等的开发.
(3).公共语言运行库(Common Language Runtime,CLR)是处于,NET核心Framework的面向对象的引擎,其将各种语言编译器生成的中间代码编译为执行应用程序所需要的原生码(native code).


二、2003-04-01 发布 .NET Framework 1.1 RTM
变化:
1、内嵌了移动版的ASP.NET控件、内嵌了ODBC和Oracle数据库的支持(这两个包含到2.0类库里了)
2、ASP.NET增加了代码访问安全功能,.NET程序从Internet下载增加了访问限制
3、增加了可以运行在手持设备上的精简版的.NET Framework
4、支持IPv6
5、增加了很多API

 

三、2004-03-01 发布.NET Framework 2.0  Preview
变化:
1、增加了很多API,并且提供了一些用于高级控制的新API,如多线程、内容分配、动态装载以及其它一些控制
2、支持的x64和IA64平台的64位操作
3、增加了对范型的支持
4、对ASP.NET控制进行了重大升级
5、提供了新的数据绑定控件
6、增加了ASP.NET的个性化支持,这其中包括对主题和皮肤的支持
应用模式方面:
1、ASP.NET,支持可 Web 访问的应用程序的开发。
2、ADO.NET,允许应用程序访问相关的其他类型数据。
3、Windows Forms,支持建立 Windows 应用程序的图形用户界面 (GUI)。
4、System.XML,使应用程序能够使用 XML 定义的数据,包括 XSLT 和 XPath。
通讯处理方面:
1、ASP.NET Web 服务,提供基于 SOAP 的交互通信。
2、.NET Remoting,主要用于 .NET 应用程序之间的通信。
3、Enterprise Services,支持可扩展的事务性应用程序。
4、System.Messaging,通过 Microsoft Message Queuing (MSMQ) 支持队列消息。
5、Web Services Enhancements (WSE),它是 ASP.NET Web 服务的扩展,支持 WS-Security 等新规范。

 

四、2006-05-23 发布.NET Framework 3.0 Beta 2(Beta 1是WinFX?)
变化:
1、增加了新的内核API
2、新增加了四个组件:
Windows表现层基类库(WPF),以前叫Avalon。这是一套新的图形接口API,这套API可以充分利用3D技术,这其中包括计算机硬件和软件。 构建一种能够应用于桌面客户端和Web 浏览器播放视频、运行动画、采用二维或三维图形,以及调用不同的文档的应用程序。这是一种基于XAML标记语言和DirectX9/10的XAML浏览器应用程序或者WPF应用程序。
Windows通讯基类库(WCF),以前叫Indigo。这是一个面向服务的消息系统,这个系统允许将本地程序和外部的程序集成,这有些类似于Web Services。 基于SOAP 全球 Web 服务协议,Indigo设计初衷以通用的 API 提供通用的方法,而WCF可以用在SOAP协议的通讯和基于优化二进制协议、基于MSMQ 队列消息 和基于 REST 的简单通信。WCF 采取明确的面向服务方法来进行通信,不在对象间进行透明通信,而是为通信各方提供略微不同的抽象服务,这样的结果是放开了分布式对象系统间某些紧密的耦合关系,使得交互出错减少,并且更容易修改。WCF创建的服务提供了客户端可访问的接口,而该接口可通过 Web 服务描述语言 (WSDL) 来定义,然后转成代码,或者直接用C#等语言定义,最后构建安全性、可靠性的应用程序。对于不同类型的开发人员构建的不同种类的应用程序,需要以不同的方式进行通信,这里涉及到WCF的通讯选项,有调用没有响应的操作、基于XML消息的异步通信和显式处理 SOAP 消息等。
Windows工作流基类库(WF),WF 工作流是一组由 WF 引擎执行的工作流驱动和面向流程的活动,建立业务逻辑与代码的分离,应对面向人员的动态工作流和面向系统工作的静态流的传统分歧,提供基于建立事务的自动化任务解决方案。
Windows数字标识(WCS),以前叫InfoCard。这是一个可以存储个人的数字标识,并提供了编程接口,其标识元系统完全基于开放的公共协议,是一种网络身份识别的技术,如可以将这项技术应用到网站的登录上。
这四个组件的地位和ASP.NET 2.0以及Windows Form 2.0是同一层次的,他们都是在.net framework 2.0基础类库的基础上进行扩展或者增加的。当然,这四个组建同时也引入了新的技术或方法,或者根本就改变了整个模式或方法。
3、增加了语言应用 Extension Method、Lambda Expressions、Anonymous Type、Query Expressions 、Automatically Implemented Properties、 LINQ

 

四、Microsoft 2007年11月? 发布了.NET Framework 3.5 版
framework的CLR是2.0,asp.net的runtime是2.0,.NET Compact Framework 3.5 版通过包含 Windows Communication Foundation (WCF) 技术扩展了对分布式移动应用程序的支持。它还添加了新的语言功能(如 LINQ)和基于社区反馈的新 API,并使用更新的诊断工具和功能来改进调试这 。这些LINQ 提供程序程序集的支持使用 LINQ 来查询 .NET Framework 集合、SQL Server 数据库、ADO.NET 数据集和 XML 文档。
其中.NET Framework 3.5第一个SP服务包的最终版.这是一个累积更新,包含很多基于.NET Framework 2.0、3.0和3.5不断生成的新功能,此外还包括.NET Framework 2.0 SP2和.NET Framework 3.0 SP2累积更新,支持x86、x64、IA64三种架构..NET Framework 3.5 SP1集成了此前发布的三十个相关Hotfix热修复补丁,同时还引入了不少新特性和改进:F3.5和F3类似,在修正之前的Bug之外,主要的扩展是:LINQ,WF,WCF,Add-in(今后会被MEF替代)。Framework 3.5 SP1,又添了几个新东东:MVC,Dynamic Data,Entity Framework,Data Services等。同时Framework 3在语言上进行了改进,例如Linq,Lambda,扩展函数,var类型的使用等等。

变化:
1、ASP.NET动态数据,它提供了丰富的框架,从而使用户可以快速进行数据驱动的开发,而无需编写代码;ASP.NET AJA 的一项新增功能,对管理浏览器历史记录提供了支持(支持后退按钮)。
2、对公共语言运行时的核心改进包括:改进了.NET Framework本机映像的布局、选择不再对完全受信任的程序集进行强名称验证、提高了应用程序启动性能、改进了生成的代码以缩短端对端应用程序执行时 间、选择在ASLR(地址空间布局随机化)模式下运行托管代码(如果操作系统支持)。此外,从网络共享打开的托管应用程序在完全受信任环境下运行时与本机 应用程序具有相同的行为。
3、提高了Windows Presentation Foundation的性能,包括缩短了启动时间,提高了与位图效果有关的性能。WPF的其他新增功能包括:改善了对业务线应用程序、本机初始屏幕、 DirectX 像素着色器的支持,并且新增了WebBrowser控件。
4、ClickOnce应用程序发行者可以决定在适当情况下不进行签名和加密,开发人员可以编程方式安装ClickOnce应用程序以显示自定义署名,并且ClickOnce错误对话框支持链接到Web上应用程序特定的支持网站。
5、实体框架是从现有的一套ADO.NET数据访问技术发展而来的。利用实体框架,开发人员可以按照应用程序特定的域模型(而不是基础数据库模型)来针对关系数据库进行编程。有关更多信息,请参见实体框架入门。 实体框架还引入了一些其他功能,包括支持SQL Server 2008的新类型、默认实体图形序列化和实体数据源。在此版本中,实体框架支持SQL Server 2008中的新日期和文件流功能。图形序列化工作可帮助开发人员生成将全部图形建模为数据协定的Windows Communication Foundation (WCF)服务。实体数据源为希望使用实体框架的ASP.NET应用程序构建者提供了传统的数据源体验。
6、LINQ to SQL新增了对SQL Server 2008中的新日期和文件流功能的支持。
7、ADO.NET Data Services Framework由满足以下条件的模式和库组合而成:支持将数据公开为一项基于REST(具象状态传输)的灵活数据服务,企业网络内部或整个互联网上的 Web客户端都可以使用该服务。ADO.NET Data Services Framework支持基于任何数据源创建数据服务。通过与 ADO.NET Entity Framework 的充分集成,可以轻松公开基础存储架构的概念视图模型。可以轻松地从任一平台访问使用ADO.NET Data Services Framework创建的服务以及兼容的Windows Live (dev.live.com)服务。针对运行在微软平台上的客户端应用程序提供了一组客户端库,以简化与数据服务的交互。例如,基于.NET Framework的客户端可以使用LINQ查询数据服务,也可以使用简单的.NET Framework对象层更新此服务中的数据。
8、现在,Windows Communication Foundation改进了对互操作性的支持,增强了部分受信任情况下的调试体验,并且扩展了整合协议支持以便在Web 2.0应用程序中可以进行更广泛的应用,从而使DataContract序列化程序变得更易于使用。
9、用于SQL Server(SqlClient) 的.NET Framework数据提供程序新增了对SQL Server 2008中的文件流和稀疏列功能的支持。
10、增加了新控件List View (TBD)和Data Pager (TBD)

 

五、微软的.NET 2010年2月?Framework 4.0主要为用户提供了以下新功能和改进:
1、.NET Framework 4.o Beta 1(x86)与 .NET Framework 3.5 SP1并行工作。在旧版的 .NET Framework中可以运行的应用程序,将继续能够运行在.NET Framework 4.o上。
2、在Visual Basic和C #语言中有所创新,例如声明lambdas 、隐线continuations 、动态调度、并命名/可选参数等。
3、在ADO.NET实体框架中增加了许多新的功能,通过提高抽象层次,从而简化开发人员的关系数据库的程序。这些新功能包括:持续忽略、POCO支持、延迟加载,测试驱动开发的支持、功能模型以及新的LINQ运营商等。
4、改进ASP.NET中的JavaScript用户界面模板和AJAX中的数据绑定功能以及图表控制;
5、改进WPF,增加Windows 7多触控、ribbon控制、任务栏扩展功能支持,同时增加Surface 2.0 SDK支持;新的业务线控制,包括图表控制,智能编辑,数据网格,以及其他能够提高“建立数据中心的应用程序”的开发者经验的控制;提高性能和可扩展性;在文字、像素布局、本地化和互操作性中添加可视化改进;
6、Windows Workflow(WF)中的改进让开发者能够更好地控制工作流程,改善了活动规划模型;改进设计体验;一个新的流程建模方式;扩大调色板的活动范围;工作流程规则一体化;新邮件相关的功能。
7、.NET框架4.o改进了基于WF的工作流程Windows通讯基础( WCF )构架,例如流服务相关支持,双向通信的持久性等,同时还提供了新的WCF功能,例如服务发现、路由器服务、简化配置、REST支持、诊断和性能提升等。
8、并行程序设计的创新功能如下:并行循环1持、任务并行库(TPL)、并行LINQ ( PLINQ )、协调的数据结构、多核心处理器等。
9、增加了.NET 4.0 Entity Framework、Optional/Named Parameters、Tuple等特性
10、增加了Visual Studio 2010 CodedUI Test、Layer Diagram、Sequence Diagram、Directed Graph等应用解决方案

 

六、开发工具和对应的.net framework版本
Visual Studio .NET 2010(将于 4 月 12 日全球同步发布)使用的是.NET Framework 4.0
Visual Studio 2008使用的.NET Framework 3.5
Visual Studio 2005使用的是.NET Framework 2.0
Visual Studio .NET 2003使用的是.NET Framework 1.1

 

七、.NET Framework 技术
1、公共语言运行时 (CLR)
公共语言运行时(CLR) 是 .NET Framework 的运行时环境。
2、Base Class Libraries (BCL)
BCL 为应用程序提供了建筑基石。
3、ASP.NET
ASP.NET 是一个免费的技术,用来构建动态 web 应用程序。
4、ADO.NET
使用 ADO.NET 技术访问数据源,例如 Microsoft SQL Server,OLE DB 和 XML。
5、Windows Forms
使用 Windows Forms 技术创建智能客户端应用程序。
6、.NET Compact Framework
Use .NET Compact Framework 用于构建基于 Windows CE 设备的应用程序。
7、Windows Presentation Foundation (WPF)
使用 WPF 技术在 Windows Vista 上创建应用程序和高保真用户体验。
8、Windows Communication Foundation (WCF)
使用WCF技术创建和运行互联系统。
9、Windows Workflow Foundation (WF)
使用 WF 技术在Windows平台上创建工作流应用程序
10、Windows CardSpace
Windows CardSpace 技术提供了一致的身份验证体验。
11、.NET Services
使用 .NET Services 来连接以云端为基础的(cloud-based) 和有云端感知能力的(cloud-aware)应用程序。
12、"Oslo"
"Oslo" 是微软下一代应用程序开发平台。