这里的正交其实就是咱们熟悉的解耦。在这里你估计会想到标题为啥是正交,不是解耦。
我忘了告诉大家本书的作者同时也是一位木匠和音乐家。估计能在木匠和音乐领域找到答案。作者真的博学。
这里抛出去一道思考题:
C++支持多重继承,而java允许类实现多重接口,使用这些设施对正交性有和影响?使用多重继承和使用多重接口的影响是否有不同?。。。
可撤销性
可撤销性我认为是对一个产品开发结果的一种度量。可撤销性就是拥抱变化,通过之前的建议,避免重复,解耦等的使用,制作灵活,有适应能力的软件。
举个很常见的例子,如果正在项目开发的过程当中提出需要更换数据库厂商,这时要是我们把数据库的概念抽象出来(数据库只是一种数据持久化),而不是把调用数据库的代码缠绕在各处。我们就可以说是soeasy。