我一直在阅读“Java Concurrency in Practice”一书,其中在 Tread Safety 一章中提到: “有时抽象和封装与性能不一致”。 我没有得到这部分。有人可以用例子解释吗?
提前致谢。
最佳答案
长话短说:先把它做好,然后再提高性能。
有时您会跳过重重障碍来尝试提高性能,有时会导致错误或糟糕的设计。更不用说,这很耗时!严格考虑性能的编程将导致难以扩展的代码,而严格考虑设计的编程将(可能)导致更多的开销。
我想一个很好的理解方式是封装是一种限制形式;设置访问/修改方式的限制。这些限制可能会以性能为代价。
完整引述如下:
Sometimes abstraction and encapsulation are at odds with performance — although not nearly as often as many developers believe — but it is always a good practice first to make your code right, and then make it fast
关于java - 抽象和封装与性能不一致 - 如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29150466/