反模式定义

来自随意问技术百科
跳转至: 导航搜索

反模式是描述对产生绝对负面结果的问题的一种常用解决方案的字面形式。
这里的关键词是:
字面形式:反模式是问题的描述,而不是代码的描述。这非常重要,因为我们可以迅速和有效地传递消息,而客户可以迅速地理解。
常用:如果它不是模式,那它就不是反模式。您必须建立几个不同的运行较差的行为实例,最好是在不同的环境中,这样才能使错误上升到反模式的级别。
负面结果:设计必须有可以观察的、负面的效应。
最著名的反模式 Y2K 向我们展示了这个激动人心的新领域的危机和出路。回想起以前,成千上万的开发者将日期编码成两位数字而不是四位数字,错误地比较这些数字就会导致数以万计的错误。很多杰出的研究者都预言这个问题将会泛滥成灾,但是经过人们对问题的深入研究,新的标识和重构技术已经很有效地修正了代码,以至于很少有人会碰到预言中那么多的问题。反模式类似于设计模式,是重复使用的解决方案。区别在于反模式有负面结果。当您为反模式做文档时,您将希望获取至少下面这些元素:
名称:有时候反模式可能已经有一个或多个非正式的名称,这是由开发社区给出的。其它情况下,您就会希望自己选择一个名称。这个名称应该具有描述性,而且要简单。
问题:问题描述了反模式有缺陷的解决方案,以及驱使开发者走向有缺陷的解决方案的推动因素。这个描述指导其他人如何找到问题。
重构的解决方案:反模式有用的范围是:可以帮助我们从陷阱中解脱出来,或者完全避免这些陷阱。重构的解决方案是指导其它人如何修正问题的指南。