博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  C#和.NET技术

摘要:C#4.0增加了动态语言的特性,从里面可以看到很多javascript、python这些动态语言的影子。虽然越来越偏离静态语言的道路,但从另一个角度来说,这些特性也都是为了提高程序员的生产力。概述 回顾C#发展的历史,C#1.0完全是模仿Java,并保留了C/C++的一些特性如struct,新学者很容易上手;C#2.0加入了泛型,也与Java1.5的泛型如出一辙;C#3.0加入了一堆语法糖,并在没有修改CLR的情况下引入了Linq,简直是神来之笔,虽然很多项目出于各种各样如性能之类的原因没有采用,但非常适合小型程序的快速开发,减轻了程序员的工作量,也提高了代码的可读性;C#4.0增加了动态语. 阅读全文

posted @ 2012-02-21 14:10 十一郞 阅读(186) 评论(0) 推荐(0)

摘要:扩展方法使您能够向现有类型“添加”方法,而无需创建新的派生类型、重新编译或以其他方式修改原始类型。扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用。对于用 C# 和 Visual Basic 编写的客户端代码,调用扩展方法与调用在类型中实际定义的方法之间没有明显的差异。最常见的扩展方法是 LINQ 标准查询运算符,这些运算符在现有 System.Collections.IEnumerable 和 System.Collections.Generic.IEnumerable(Of T) 类型中添加了查询功能。若要使用这些标准查询运算符,请先使用 using System.L 阅读全文

posted @ 2012-02-14 10:35 十一郞 阅读(310) 评论(0) 推荐(0)

摘要:这个特性是从.Net3.5的时候开始出现的,是指在原有类中插入一个方法,用于给原有类扩展新的功能的方法。给我的感觉就是有点类似于插件的意思。比如下面的代码: 1 namespace ExtendFunction 2 { 3 class Program 4 { 5 static void Main(string[] args) 6 { 7 DateTime _now=DateTime.Now; 8 Console.Write(_now.TO_CH()); 9 C... 阅读全文

posted @ 2012-02-14 10:31 十一郞 阅读(265) 评论(0) 推荐(0)