3.要考虑API设计决策的性能后果
使公有类型成为可变类型,会导致太多不必要的保护性拷贝(看39条,但是没搞懂).
在适合使用组合模式的公有类中使用继承,会把这个类与它的父类永远地捆绑在一起,从而人为地限制子类的性能.
在API中使用实现类型而不是接口,会把你约束在具体的实现上,即使将来更快地实现你也无法使用.
幸运地是,好的API设计会带来好的性能.为了获取好的性能而对API进行包装,这是非常不好的想法.因为导致API性能的因素可能在平台未来版本中解决,或者在将来软件底层不存在,而你包装的API和问题却永远困扰着你.