写点什么

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:023939
用户头像

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

关注

评论

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

聊一聊 C#线程池 的线程动态注入

不在线第一只蜗牛

Java C# 线程池

啃完阿里老哥这套Java面试八股文后,成功收获蚂蚁 offer!

Summer

Java 程序员 面试 架构师 大厂

Sora 文生视频技术大揭秘:能力惊艳但局限几何?

测试人

软件测试

从深海探测到海洋强国:数字孪生助力海洋装备跨越式发展

DevOps和数字孪生

提高IT工单管理的方法

ServiceDesk_Plus

工单管理 工单管理软件 IT工单管理

20 条实用的创业实战指南:初创项目如何提升竞争力?

TechubNews

Sora 文生视频技术大揭秘:能力惊艳但局限几何?

测吧(北京)科技有限公司

测试

非凸科技荣登脉脉2024“年度职得去雇主”榜单

非凸科技

鸿蒙智行问界M9,中国豪华车的龙门一跃

脑极体

AI

想在 Java 八股文面试中脱颖而出?这1000 道互联网大厂 工程师面试题必不可少

Summer

Java 程序员 面试 架构师 大厂

「地平线」副总裁余轶南与「理想汽车」智驾产品总监赵哲伦联手创业,入局具身智能赛道!

机器人头条

自动驾驶 人形机器人 具身智能 地平线

全国范围AOI数据2024年12月更新,共计超过305万个,最完整的地理要素数据库(AOI数据更新系列)

Geek_f9782a

AOI 全国AOI数据

鸿蒙Flutter实战:14-现有Flutter 项目支持鸿蒙 II

少湖说

flutter 鸿蒙系统 harmoyos

盘点这些年搭建器在用户体验优化的实践|得物技术

得物技术

前端 性能优化、

更快、更灵活、场景更丰富,云效镜像构建能力升级啦!

阿里云云效

阿里云

《鲲鹏原生开发技术白皮书》发布,携更多伙伴迈入原生开发新时代

极客天地

鸿蒙原生开发手记:05-开发之外的那些事

少湖说

HarmonyOS 鸿蒙系统

鸿蒙原生开发手记:04-一个完整元服务案例

少湖说

鸿蒙系统 fluter harmoyos

更快、更灵活、场景更丰富,云效镜像构建能力升级啦!

阿里巴巴云原生

阿里云 云原生

代码人生-精选文章周刊

安全乐谷

互联网 职场 心理学 找工作 招聘

Milvus×EasyAi:如何用java从零搭建人脸识别应用

Zilliz

Java 人脸识别 Milvus

LeetCode题解:617. 合并二叉树,JavaScript,详细注释

Lee Chen

压测实战 | 记录一次元旦跨年夜的测试保障

优测云服务平台

压力测试

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