成功模式(pattern)作家的七个习惯(4)(byGOF)

2008-04-10 02:47:52来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

习惯四:保持模式独一无二和优点突出
(Keeping Patterns Distinct and Complementary)

当你开发多个模式时有一个趋向需要避免。当你写一个模式时,可能趋向于在细节和口径(scope)同时增长。在这时很容易忘记其它模式。模式之间的区别结果变得模糊了,使别人无法分组(collectively)理解模式。它们开始在口径和目的上互相重叠。这可能对作者来说非常清楚,而对新手来说不那么清楚。他们将不知道什么时候去使用一个模式而不是另一个,因为它们之间的区别不那么明显。

所以确保你的模式是正交的(orthogonal)并且它们合力(synergistically)工作。持续问你自己:“模式X和模式Y的区别是什么?”如果解决相同的或相似的问题,你可以把它们合并。如果两个模式使用相似的类层次(hierarchies),则不用担心。在OO编程中有这么多方法使用相对少的继承机制。通常相同的类使用将会导致表示广泛变化的明显的不同对象结构。让模式的意图作为它们不同点,而不是实现它们的类结构的指南。

一个测试你的模式怎样正交和合作的好的方法是保持分离的文档来比较(compare)和对比(contrast)你的模式。在<<设计模式>>中我们提供了多个为了这个目的的部分。试图在写下来的形式下解释模式关系的简单行为给我们对我们的模式的新的视角。不止一次它让我们重新思考它们的一些部分。

我的唯一遗憾是我们在游戏中没有早一点重视关系。我建议你尽早开始写下这个附件材料。这可能看上去是做傻事,特别当你有很多模式需要比较。不过当你只有两个模式时,重叠得可能性出现了。初期花时间比较和对比泥的模式将帮助你保持你的模式独一无二而且优点突出。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:成功模式(pattern)作家的七个习惯(3)(byGOF)

下一篇:成功模式(pattern)作家的七个习惯(6)(byGOF)