究竟什么是语法糖呢
其实语法糖只是一个概念,大家可能很早就在接触语法糖了,只是一直不知道这个就是语法糖
百科原话:语法糖(Syntactic sugar),是由Peter J. Landin(和图灵一样的天才人物,是他最先发现了Lambda演算,由此而创立了函数式编程)创造的一个词语,它意指那些没有给计算机语言添加新功能,而只是对人类来说更“甜蜜”的语法。语法糖往往给程序员提供了更实用的编码方式,有益于更好的编码风格,更易读。不过其并没有给语言添加什么新东西。
这里有两点需要注意的:
1语法糖的目的:是为了让代码更易读,更容易让人理解。
2语法糖的本质:只是一种新的编码方式,并没有给语言增加新的功能
比如 C语言中 如果数组用指针的形式表示某元素的话
1 a[i]表示 1 *(a+i)
1 a[i][j] 表示 1 *(*(a+i)+j) 这在本质上并没有给c增加新的功能,但是读起来却方便很多
在C#中比如:
1 public string MyName { get; set; }
表示
1 private string _myName; 2 3 public string MyName 4 5 { 6 7 get { return _myName; } 8 9 set { _myName = value; } 10 11 } 12 13
using (var stream = new FileStream("", FileMode.Create)) { // do something }
表示:
1 var stream = new FileStream("", FileMode.Create); 2 try 3 { 4 // do something 5 } 6 finally 7 { 8 if (stream != null) 9 { 10 stream.Dispose(); 11 } 12 }
在此需要声明的是“语法糖”这个词绝非贬义词,它可以给我带来方便,是一种便捷的写法。(貌似每个介绍语法糖的文章都会来这么一句)很多人觉得写原生的方法时不是效率更高,其实不然,在程序编译过程中,编译器已经会帮我们做转换;而且可以提高开发编码的效率,在性能上也不会带来损失。
如果你觉得写的不错,欢迎转载和点赞。 转载时请保留作者署名jilodream/王若伊_恩赐解脱(博客链接:http://www.cnblogs.com/jilodream/
分类:
乱七八糟的常识
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)