现在的位置: 首页 > 综合 > 正文

.NET的过去与现在

2013年10月23日 ⁄ 综合 ⁄ 共 1697字 ⁄ 字号 评论关闭

随着WinRT的引入以及Silverlight的式微,一些.NET开发者担心该平台的流行程度,进而微软对其支持是否会走下坡路。C#是.NET平台的旗舰语言,但C#的创建者Anders Hejlsberg最近公开发布的项目却是TypeScript。该事件将大批听众带到了Brandon Bray的演讲——“.NET 的演进(The Evolution of .NET)”——之前,大家想看一下.NET将如何发展。

Bray是.NET组的程序经理,在演讲开始先概括了.NET平台的历史:从2000年职业开发者大会(Professional Developers Conference)上最初宣布,到发展成今天的样子,今年恰好是交付于2002年2月的.NET Framework 1.0的十周年。

Bray指出,.NET平台有三个长期的主题:

  1. 扩展对平台与行业趋势的支持
  2. 减少给出解决方案的时间
  3. 通过改进运行时与库来改善性能

在回顾完历史之后,Bray这样评论Silverlight:“它为.NET做了很多非常有益的事情”。他还讲到,Windows Phone和Windows 8从Silverlight中学到了很多经验教训。

.NET Framework 4.5发布三个月以来,下载量已经超过了400万,这说明该平台还是继续受到欢迎的。在目前情况下,Bray注意到用户主要期待如下几个主要特性:

  • 兼容于业务的应用:IT消费化的发展可以反映出,自带移动设备(手机/平板/便携式电脑)能够在公司工作和使用是一种发展趋势。
  • 快速与流畅的体验:这不仅是UI性能方面的要求,对于用户容易地理解如何使用应用程序而无需外界帮助,也是必要的。
  • 现代化连接的应用程序:设备能够与Web/云、桌面等媒介交换数据。

Bray提到,从开发者的观点来看,他们希望.NET能够支持多个平台:Windows Phone、Web与云、Windows 8。用户和开发者的需求决定了.NET Framework要提供的服务。

性能改进

那么有哪些可见的性能改进呢?Bray 重点指出了.NET 4.5的后台垃圾回收、多核JIT (just-in-time)编译器以及更少的磁盘使用。Bing团队采用了新的后台垃圾收集器,他们发现平均停顿时间从老的垃圾收集器的8%减少到了新的垃圾收集器的2%。ASP.NET会自动使用多核JIT,开发者可以利用 ProfileOptimization类将该功能添加到自己的应用程序中。

有的开发者在向.NET 4.5的升级时遇到了DLL Hell这种困难,Bray鼓励大家与微软联系,因为微软也意识到了问题而且正在积极地解决。

Windows Phone 8上的.NET:云中编译的优点

Bray 指出Windows Phone 8有如下改进:

  • CoreCLR现在是WP8上.NET的基础
  • 关键的.NET 4.5功能目前WP8都能支持
  • 云中编译意味着应用程序加载更快

在使用WP8的硬件上,利用云中编译技术,普通的手机应用可以预期2倍的性能改进。之前部署的程序集实际上是将手机当作编译器,这些程序集没有针对性能或电池续航时间进行优化。但利用云中编译技术,MDIL(与机器相关的指令语言)用于外包编译。之后将MDIL编译器生成的MDIL程序集部署到手机上。

未来

在谈到平台的未来时,Bray有所保留,他并没有就新特性清晰地给出任何声明。然而,他的确一再重申微软非常关心.NET,这是微软所有平台的组成部分。Bray公开说,“我们(微软)希望.NET获得成功。”

展望未来,Bray观察到原来的假设已经发生了变化,.NET平台也需要随之改变了。未来应该重点关注以下领域:

  • 改进设备体验(Windows Phone、平板等)
  • 一流的云体验
  • 异构开发
  • 同时定位于多个平台

再有,虽然没有发布什么具体信息,但是我们还是能够发现一些有意思的蛛丝马迹。如果真如宣称的那样,从Silverlight得到了一些经验教训,那么看来微软的Singularity项目找到了与不同项目结合的途径。观察一下WP8的MDIL,今年8月Channel 9 的用户“Felix9”提到,MDIL之前曾在Singularity的Bartok编译器中出现过。

【上篇】
【下篇】

抱歉!评论已关闭.