[C# 3.0 入门] [第一章 Lambda表达式] 第一节:C# 3.0 是什么 & C# 3.0的适用范围
2010-09-30 20:59:57 来源:WEB开发网这也意味着,C# 3.0的特征,不是通过言语的说明,而必须看见实实在在的代码才能理解。而这代码也不是那种寥寥几行的sample code,必须是动真格的那种有一定规模的program(但是遗憾的是,这种篇幅的连载随笔,也写不下这样的code。只能是用那种寥寥几行的sample code来做说明,还望谅解)。
那么,具体的用code来展现的C# 3.0的特征究竟是什么呢?
我认为,那其实就是“排除了一切歧义(暧昧),使用严格的类型,用彻彻底底最少的文字来写code”。
一个典型的例子,就是这次的主题“Lambda表达式”。Lambda表达式的内部机理,与C# 2.0 所具有的匿名方法没什么两样。有两样的地方,主要就是能够以最少的文字数来写代码。
另一个c# 3.0的新机能“隐含类型变量”,同样也是为了减少代码数量。根据初始化值的来确定类型,又以前的代码:
SpecialHighReadabilityTypeName<AnotherHighReadabilityTypeName>
这么一长串变成了var三个字母(这个新机能将在后面的章节介绍)。
但是,代码变短的效果是巨大的。首先,当然是手敲键盘的时间变短了。通过Visual Studio的IntelliSense的配合,输入量大大减少(对于精力充沛的年轻人来说这可能不算什么)。实现同样的意图,输入量的减少就意味着产量的增加。
然而更好的一点就是,读代码的时间减少了。一屏显示的文字数量和人眼能够读取的信息量都是有限的,同样的编程意图,用相对少的文字来表现的话,那么能够表示的信息量就多了。由于这一点,读代码时的翻页频度降低了,也排除了没有什么重要意义的关键字,用来分辨有意义代码的的时间也减少了。
问题是,为了没有歧义(暧昧),用更少的文字来表现同样的编程意图,而引入了新的语法,这就必须把这些个语法给记住。同时,虽然代码短了,但因为是不熟悉的语法,阅读源代码并不见得变得简单。
更多精彩
赞助商链接