4.0更新—webcast视频笔记3(C#4.0和vB10更新)
C#4.0和vB10更新
2010-5-10
The Evolution of C#
发展历程
2.0提供泛型的支持
3.0 linq-
C#4.0
动态 ruby 。。
动态语言dynamic
动态语言和静态语言的对比
动态语言不编译直接解析执行
C# language innovations
--Dynamically Typed Objects
--Optional and Named Parameters
--Improved COM Interoperability ( 语法支持)
--Co- and Contra-variance(逆协变)
Dynamic language Runtime(DLR)
性能不一定比反射有优势但是语法要简洁很多
下图
1运行时环境决定
2转换为系统数据类型
高级应用
调用
OptionsnalandNamedParameters---编译器特性
参数可选化并可命名
例子:
即:指定defaultValue
调用方法,只需写上参数名(与定义参数名匹配):参数值,不需要指定顺序,不需要写入全部参数。
COM互调用Improved COM Interoperability
Vs2010提升
Co-and Contra-variance 协变和逆变
以前的操作存在如下风险,不允许build
子类转成父类(协变)-----详细学习一下。In或者out可以编译通过,子类与父类的写和入操作
例如:out可以传子类型,in可以传父类型
Complier as a Service
C#和vb10区别
该睡了,明天继续听吧,慢慢理解。