C#各版本特性

  自从2000年初期发布以来,C#编程语言不断的得到改进,使我们能够更加清晰的编写代码,也更加容易维护我们的代码,增强的功能已经从1.0搞到啦7.0甚至7.1,每一次改过都伴随着.NET Framework库的相应支持,也不断的带给我们期待与惊喜。

C#语言目标与前行

C#的设计目标是有以下几点:
  旨在是一种简单,现代,通用的面向对象编程语言。
  语言及其实现应该为软件工程原理提供支持,例如强类型检查,数组维度检查,未初始化的变量引用检测以及自动垃圾收集。软件的鲁棒性,耐久性和程序员的生产力很重要。
  旨在用于开发适用于分布式环境中部署的软件组件。
  便携性对于源代码和程序员非常重要,特别是已经熟悉C和C ++的程序员。
  支持国际化是非常重要的。
  C#适用于为托管和嵌入式系统编写应用程序,从使用复杂的操作系统到非常小的专用功能都非常适用。
  虽然C#应用程序在内存和处理能力要求方面是经济的,但是该语言并不打算直接用C或汇编语言直接与性能和尺寸进行竞争。

C#版本
C#版本中添加的功能:
C#2.0
  泛型
  部分类型
  匿名方法
  迭代器
  可空类型
  Getter / setter单独可访问性
  方法组转换(代表)
  Co- and Contra-variance for delegates
  静态类
  Delegate inference
C#3.0
  隐式类型局部变量
  对象和收集初始化器
  自动实现的属性
  匿名类型
  扩展方法
  查询表达式
  Lambda表达式
  表达树
  部分方法
C#4.0
  动态绑定
  命名和可选参数
  Generic co- and contravariance
  嵌入式互操作类型(“NoPIA”)
C#5.0
  异步方法
  Caller info attributes
C#6.0
  Compiler-as-a-service(Roslyn)
  将静态类型成员导入命名空间
  异常过滤器
  在Catch和Finally中使用Await
  自动属性初始化器
  只读属性的默认值
  Expression-bodied members
  Null-conditional operators(空条件运算符,简洁检查)
  字符串插值
  nameof operator
  字典初始化器
C#7.0
  out变量
  模式匹配
  元组
  解构
  局部函数
  数字分隔符
  二进制文字
  局部引用和引用返回
  扩展异步返回类型
  表达式的构造函数和finalizers
  Expression bodied getters and setters
  throw表达式
C#7.1
  Async main
  默认表达式

备注:本文来源于其他网络文章。

posted @ 2019-07-25 17:54  abcd123456789  阅读(211)  评论(0)    收藏  举报