-
NET的未来和VB、C#的前途
NET的未来和VB、C#的前途
在去年微软的专业开发者大会上(Professional Developers Conference PDC 2008),微软就开发者在.NET平台上的未来做了详细的展望,本文我们将概括地来看一下即将到来的.NET 4.0 Framework的一些特性,以及全新的Microsoft 系编程语言,讨论下微软对于.NET Platform在接下来几年的长远展望。
VB.NET和C#的联合发展
当前来自软件的最首要的信息之一是针对Microsoft Visual Basic .NET开发者的。VB.NET和Microsoft Visual C#都是构建在通用语言运行时(Common Language Runtime—CLR)之上,这意味着它们都向下编译成通用中间语言(Common Intermediate Language—CIL)。由于二者均向下编译成相同的代码,因而两个语言内部也不存在很大的差别。但是,两种语言却由微软两个不同的团队来维护,而且几年来的这种分离由于开发团队在各自产品上有不同的视角和理念,导致C#和VB.NET这两种语言演变出许多语言方面的特性。许多令人兴奋的特性最初出现在C#中最后却成了VB.NET的特性,很多VB.NET开发者都感到了这一点。自然地,这引起了VB.NET阵营的不满。
联合发展是微软的一个承诺,借此承认C# 和VB.NET为相同重要的语言,而且微软承诺在语言特性的发展方面,这些特性会同时加入到两个语言中。开发者不再需要为了某个特性而选择某个语言,也不再需要讨论到底哪个语言更好,他们要做的只是从语法方面来选择自己的语言就可以了。也许C#开发者会有一点挥之不去的优越感,VB.NET开发者会为此不爽,但联合发展后VB.NET开发者可以提醒“骄傲”的C#开发者,因为两种语言只是不同外表下的同一个东西。
动态语言运行时(Dynamic Language Runtime)的介绍
微软很敏感地意识到.NET Framework并不是构建应用时的唯一选择。快速地看看现在的开发环境,你会发现有很多语言选择。人们花费时间和精力用这些语言来写出有用的组件,问题来了:怎么能够让这些用其他语言写出的组件不至于在.NET上重写?
也许即将发布的.NET 4.0最令人激动的新特性是动态语言运行时(Dynamic Language Runtime—DLR)。就像通用语言运行时(Common Language Runtime—CLR)为静态型语言如C# 和VB.NET提供了通用平台一样,动态语言运行时(Dynamic Language Runtime—DLR)为像JavaScript, Ruby, Python甚至COM组件等动态型语言提供了通用平台。这代表.NET Framework在互操作性方面向前迈进了一大步,提供了一种语言操作的抽象,共享存储空间避免数据在进程中反复的集结,像垃圾收集一样的一套通用语言特性,以及将一种数据表达转换成另一种。
在更高层,你可以认为动态语言运行时(Dynamic Language Runtime—DLR)有三个层:
*.NET语言集成(.NET Language Integration)
* DLR核心组件(DLR Core Components)
* 语言结合(Language Binders)
在去年微软的专业开发者大会上(Professional Developers Conference PDC 2008),微软就开发者在.NET平台上的未来做了详细的展望,本文我们将概括地来看一下即将到来的.NET 4.0 Framework的一些特性,以及全新的Microsoft 系编程语言,讨论下微软对于.NET Platform在接下来几年的长远展望。
VB.NET和C#的联合发展
当前来自软件的最首要的信息之一是针对Microsoft Visual Basic .NET开发者的。VB.NET和Microsoft Visual C#都是构建在通用语言运行时(Common Language Runtime—CLR)之上,这意味着它们都向下编译成通用中间语言(Common Intermediate Language—CIL)。由于二者均向下编译成相同的代码,因而两个语言内部也不存在很大的差别。但是,两种语言却由微软两个不同的团队来维护,而且几年来的这种分离由于开发团队在各自产品上有不同的视角和理念,导致C#和VB.NET这两种语言演变出许多语言方面的特性。许多令人兴奋的特性最初出现在C#中最后却成了VB.NET的特性,很多VB.NET开发者都感到了这一点。自然地,这引起了VB.NET阵营的不满。
联合发展是微软的一个承诺,借此承认C# 和VB.NET为相同重要的语言,而且微软承诺在语言特性的发展方面,这些特性会同时加入到两个语言中。开发者不再需要为了某个特性而选择某个语言,也不再需要讨论到底哪个语言更好,他们要做的只是从语法方面来选择自己的语言就可以了。也许C#开发者会有一点挥之不去的优越感,VB.NET开发者会为此不爽,但联合发展后VB.NET开发者可以提醒“骄傲”的C#开发者,因为两种语言只是不同外表下的同一个东西。
动态语言运行时(Dynamic Language Runtime)的介绍
微软很敏感地意识到.NET Framework并不是构建应用时的唯一选择。快速地看看现在的开发环境,你会发现有很多语言选择。人们花费时间和精力用这些语言来写出有用的组件,问题来了:怎么能够让这些用其他语言写出的组件不至于在.NET上重写?
也许即将发布的.NET 4.0最令人激动的新特性是动态语言运行时(Dynamic Language Runtime—DLR)。就像通用语言运行时(Common Language Runtime—CLR)为静态型语言如C# 和VB.NET提供了通用平台一样,动态语言运行时(Dynamic Language Runtime—DLR)为像JavaScript, Ruby, Python甚至COM组件等动态型语言提供了通用平台。这代表.NET Framework在互操作性方面向前迈进了一大步,提供了一种语言操作的抽象,共享存储空间避免数据在进程中反复的集结,像垃圾收集一样的一套通用语言特性,以及将一种数据表达转换成另一种。
在更高层,你可以认为动态语言运行时(Dynamic Language Runtime—DLR)有三个层:
*.NET语言集成(.NET Language Integration)
* DLR核心组件(DLR Core Components)
* 语言结合(Language Binders)
栏目列表
最新更新
python爬虫及其可视化
使用python爬取豆瓣电影短评评论内容
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比