在 C#(和 Java)中,字符串只不过是一个具有存储长度和附加一些方法的 char 数组。同样,(除了引用与值之外)对象只不过是添加了继承和接口的美化结构。
在一个层面上,这些添加感觉像是对自己的清晰功能和增强。在另一个层面上,它们感觉像是从“句法糖”的地位的边缘升级。
为了进一步了解这个想法,请考虑(我可能有一些细节错误,但重点仍然存在):
transistor
elementary logic gate
compound gate
| |
ALU flip-flop
| | |
| register RAM
| |
CPU
microcode
assembly
C
C++
| |
MSIL JavaScript
C# jQuery
很多时候,任何单一的抽象层看起来很像语法糖,但多层分离感觉彼此非常分离。
你怎么知道什么时候不再是语法糖而开始成为真正的功能?