写点什么

C#的未来计划

  • 2013-12-25
  • 本文字数:829 字

    阅读完需:约 3 分钟

NDC London 上,Mads Torgersen 提出了对未来 C#语言的的计划。需要注意的是,这些只是计划,不会保证在哪个版本发布。 Damien Guard 对这些建议进行了总结和简要的分析,我们在此为您挑选了其中的一些内容。

只读属性

只读自动属性将允许开发者在一行代码中声明属性及其后台字段。

public int X { get; } = x;静态类型 using 语句

Visual Basic 和 Java 都允许在命名空间中导入模块(C#静态类)。这样可以移除常用的静态函数前面的重复代码,如“Math.”。

主构造函数

通过在类名后加上参数,开发者将不再需要显式创建构造函数。这可以移除将构造函数参数复制到私有字段时的冗长代码。

public class Point(int x, int y) { private int x, y; }属性和方法表达式

属性表达式可以为简单的只读属性剔除一些原来必须的样板代码。

public double Distance => Math.Sqrt((X * X) + (Y * Y));方法表达式也是如此,当然它们可以接受参数。注意,参数化的属性仍然没有列入考虑范围之内。在未来相当长一段时间里,这只能是 VB 独有的特性。

函数参数

如今大多数开发者从来不用数组,除非要使用 params 关键字。因此有人提议让 params 也支持 IEnumerable 接口。如果这样做,其他语言(如 Visual Basic)也需要支持。还有人提议可以使用 out 关键字声明局部变量。例如,

int.TryParse("123", out int x);空传播

在处理凌乱的数据时,开发者经常需要在读取属性或调用方法前编写一系列空判断逻辑。?. 语法将帮助我们剔除这些逻辑,只有当它前面的值不为空时,才会调用后面的方法。

var bestValue = points?.FirstOrDefault()?.X;在本例中,如果 points 为空,或 points.FirstOrDefault() 返回空,那么将忽略.X,并返回空。它也可以和?? 连接使用,以提供可选的默认值。

var bestValue = points?.FirstOrDefault()?.X ?? -1;Objective-C 和 Smalltalk 这样的“消息传递”语言都包含这样的语法。它通常被认为是有问题的,因为本应抛出空引用异常的地方,却悄无声息地被忽略了。

原文英文链接: Future Plans for C#

2013-12-25 09:024031
用户头像

发布了 59 篇内容, 共 25.2 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

解锁电商新视野:京东商品详情API——您的精准商品信息探索利器

代码忍者

API 测试 pinduoduo API

mcgs笔记 触摸校准程序

万里无云万里天

HMI 工厂运维 mcgs

通过文字图像——代码图形注释自动生成

芯动大师

代码 生成式

mcgs笔记 优盘包制作

万里无云万里天

HMI 工厂运维 mcgs

基于波特图的控制系统设计算法

芯动大师

AIGCC

ChatGPT流程深度分析:一篇文章带你掌握大模型整体流程(专家篇)

肖哥弹架构

Java 大模型 ChatGPT LLM

mcgs笔记 菜单栏中工具下的功能(上)

万里无云万里天

HMI 工厂运维 mcgs

mcgs笔记 菜单栏中工具下的功能(下)

万里无云万里天

HMI 工厂运维 mcgs

mcgs笔记 构件联动 滑动输入与百分比填充

万里无云万里天

HMI 工厂运维 mcgs

mcgs笔记 系统变量

万里无云万里天

HMI 工厂运维 mcgs

mcgs笔记 系统参数设置界面

万里无云万里天

HMI 工厂运维 mcgs

mcgs笔记 有线网络连接

万里无云万里天

HMI 工厂运维 mcgs

淘宝API接口深度解析:利用关键词搜索商品列表数据

代码忍者

API 接口 pinduoduo API

Java开发性能瓶颈TOP榜,你中招了吗?

巧手打字通

Java 性能优化 后端 经验总结 性能瓶颈

试验大模型的图像识别能力

AIGC.TWang

图像识别 多模态 大模型 AIGC AI大语言模型

mcgs笔记 动画组态 分段填充颜色

万里无云万里天

HMI 工厂运维 mcgs

mcgs笔记 有线网络 上传工程

万里无云万里天

HMI 工厂运维 mcgs

PIRF-410-Opinion-Is it funny?

Echo!!!

English

mcgs笔记 程序保护 设置各种密码

万里无云万里天

HMI 工厂运维 mcgs

“柔性算力”首款云服务器亮相828!华为云Fleus X 实例体验升级

轶天下事

C#的未来计划_C#_Jonathan Allen_InfoQ精选文章