C# 4何以成为微软锋利的刀——动态编程语言

发表于:2010-8-23 10:19

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:金旭亮(cnblogs)    来源:51Testing软件测试网采编

  作为微软.NET平台最重要的支柱,C#一直以一种不断革新的面貌出现,从C#1.0的委托到C# 4的动态编程语言。这也是C#成为微软锋利的刀的原因之一。

  近几年来,在TIOBE公司每个月发布的编程语言排行榜[1]中,C#总是能挤进前10名,而在近10年的编程语言排行榜中,C#总体上呈现上升的趋势。C#能取得这样的成绩,有很多因素在起作用,其中,它在语言特性上的锐意进取让人印象深刻(图 1)。

图 1 C#各版本的创新点

  2010年发布的C# 4,最大的创新点是拥有了动态编程语言的特性。

  1 动态编程语言的中兴

  动态编程语言并非什么新鲜事物,早在面向对象编程语言成为主流之前,人们就已经使用动态编程语言来开发了。即使在Java、C#、C++等面向对象编程语言繁荣兴旺、大行于世的年代,动态编程语言也在“悄悄”地攻城掠地,占据了相当的开发领域,比如 JavaScript业已成为Web客户端事实上的主流语言。

  最近这几年,动态编程语言变得日益流行,比如Python、Ruby都非常活跃,使用者众多。

  这里有一个问题,为什么我们需要在开发中应用动态编程语言?与C#和Java这类已经非常成熟且功能强大的静态类型编程语言相比,动态编程语言有何优势?

  简单地说,使用动态编程语言开发拥有以下的特性:

  (1)支持REPL(Read-evaluate-print Loop:“读入à执行à输出”循环迭代)的开发模式,整个过程简洁明了,直指问题的核心。

  举个简单的例子,图 2所示为使用IronPython[2]编程计算“1+2+……+100”的屏幕截图,我们可以快速地输入一段完成累加求和的代码,然后马上就可以看到结果:

图 2 使用IronPython编程

  如果使用C#开发就麻烦多了,您得先用Visual Studio创建一个项目,然后向其中添加一个类,在类中写一个方法完成求和的功能,再编写调用这一方法的代码,编译、排错,最后才能得到所需的结果……

  很明显,对于那些短小的工作任务而言,动态编程语言所具备的这种REPL开发模式具有很大的吸引力。

61/6123456>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号