关于不变性影响的经验数据?
2022-09-03 07:33:56
在今天的课堂上,我的教授正在讨论如何构建一门课。这门课程主要使用Java,我比老师有更多的Java经验(他来自C++背景),所以我提到在Java中应该喜欢不可变性。我的教授要求我证明我的答案是正确的,我给出了我从Java社区听到的理由:
- 安全性(尤其是螺纹加工)
- 减少对象数量
- 允许某些优化(特别是对于垃圾回收器)
教授质疑我的说法,他说他希望看到对这些好处的一些统计测量。我引用了大量的轶事证据,但即使我这样做了,我也意识到他是对的:据我所知,还没有一个关于不变性是否真的提供了它在现实世界代码中所承诺的好处的实证研究。我知道这是从经验中得出的,但其他人的经验可能会有所不同。
所以,我的问题是,有没有对现实世界代码中不变性的影响进行过任何统计研究?