Archives

帖子来自 bitfan RSS

拓展动态编程的新领域

作者: bitfan (1 篇文章) 日期: 九月 15, 2010 在 3:35 下午
评论 (1)

拓展动态编程的新领域 ——C# 4动态编程新特性与DLR剖析 金旭亮 ========================================= 注: 很久没有发文了,贴一篇新文吧。 此文发表于《程序员》2010年第8期。 有关DLR和C# 4动态特性的详细介绍,请参看本人拙著《.NET 4.0面向对象编程揭秘(应用篇)》,目前该书正处于编辑出版流程中,估计12月上市。 与此书相关的技术资源,将陆续发布于本博客。 ========================================== 近几年来,在TIOBE公司每个月发布的编程语言排行榜[1]中,C#总是能挤进前10名,而在近10年的编程语言排行榜中,C#总体上呈现上升的趋势。C#能取得这样的成绩,有很多因素在起作用,其中,它在语言特性上的锐意进取让人印象深刻(图 1)。 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”的屏幕截图,我们可以快速地输入一段完成累加求和的代码,然后马上就可以看到结果: 如果使用C#开发就麻烦多了,您得先用Visual ...

继续 ›

分类: 博客征文专栏, 软件开发工具