c# .net 微软证书
微软在9月底刚刚发布了C#8.0 ,但微软已经开始计划C#9.0。 Java的下一个版本可以在许多其他功能中获得开关表达式,记录类型和简化的参数null验证代码。
随着C#语言成为开源,Microsoft表示它正在与社区合作,为下一个版本提出功能。 该项目的GitHub页面没有提到升级的正式到达日期,只是说它应于2090年1月1日到期。
[ 也在InfoWorld上:微软的开放应用模型和Rudr解释 ]
到目前为止,针对C#9.0的功能包括:
- 简化的参数null验证代码,允许使用对参数的小注释来简化对参数的标准
null
验证。 - 当每个手臂的表达式也是语句表达式时,支持将switch表达式用作语句表达式。 当用作语句表达式时,不需要两臂之间的通用类型。
- 记录,一种简化的C#类和结构类型的声明形式,结合了相似功能的优点。 记录提供了一种机制,用于通过描述集合的成员以及与常规样板(如果有)的其他代码或偏差来声明数据类型。
- 使用CallerArgumentExpression,开发人员可以捕获传递给方法的表达式,以在诊断/测试API中提供更好的错误消息并减少击键。
- 放宽类型声明上围绕“ ref”和“ partial”修饰符的排序约束。
- 主构造函数,通过将构造函数参数直接放在整个类的作用域中来减少编程开销,而无需显式声明支持字段。
- 顶级语句和成员声明,在C#中包含脚本方言。 C#编译器当前了解用于脚本编写和交互目的的语言方言。 脚本方言的使用相对较少,但用法正在增加。 该计划基于一种信念,即可以将C#扩展名添加到该语言中,而不用使用单独的脚本方言。
- 支持协变返回类型,允许覆盖方法比其覆盖的方法具有更多的引用类型。
- 静态委托,提供对该语言的轻量级回调功能。
- 支持可为空的增强型通用类型,以应对当前的通用类型算法结果与直觉相反的情况。 通过提议的更改,诸如
condition 7 1 : null
类的表达式将导致生成int?code类型的值。 - 允许使用
int?
三元运算int?
和双操作数。 - 为了在为方法参数提供lambda函数时避免捕获任何局部状态,lambda声明将以static关键字作为前缀。 这使lambda函数像静态方法一样。
[ 通过InfoWorld的App Dev Report新闻通讯了解软件开发中的热门话题 ]
C#是一种面向对象的类型安全编程语言,与Java类似,其根源于C系列。 它还利用独立的,自描述的功能包,支持垃圾回收和面向组件的编程。
翻译自: https://www.infoworld.com/article/3505939/microsofts-c-90-begins-to-take-shape.html
c# .net 微软证书