目前,许多新开发的编程语言热衷于开发语法糖吸引开发人员。这里浅析一下语法糖的原理:
- 语法糖是指在语义层没有什么意义、或者缺乏底层代码支撑的、但是在开发或者应用中使工作简化方便的语义支持。
- 语法糖一般是针对一些重要语义、产生的泛化,或者说是、泛生语义。
- 语法糖的生成方法:多路与重载是其基础,拼凑与封装是其比较多的做法。
- 多路是指多个指令指向一个语义,重载是指多个域使用同一套符号指令集。
- 多路会导致语义负载复杂化,进一步造成服务的风险抬升。
- 重载会降低系统的可用性(系统需要分辨符号的使用域,而降低系统效能和系统稳定性)。
- 拼凑与封装对系统性能影响不大,但收益也不明显。
- 语法糖如果设计得好,花费不大,却能吸引不少用户。设计语法糖,是系统自身完善的一种方案。总之,语法糖就是系统泛化的一种形式,没有必要对其深恶痛绝或者趋之若鹜。