我正在研究模式和反模式。我对模式有一个清晰的概念,但我没有反模式。来自网络和维基百科的定义让我很困惑。

有人能用简单的话给我解释一下什么是反模式吗?目的是什么?他们做什么?这是好事还是坏事?


当前回答

反模式是一种不解决问题的方法。但它还有更多的含义:在解决问题的尝试中,它也是一种经常出现的方法。

其他回答

就像设计模式一样,反模式也是一个模板,也是解决某个问题的可重复方式,但是以非最佳和无效的方式。

反模式是一种不解决问题的方法。但它还有更多的含义:在解决问题的尝试中,它也是一种经常出现的方法。

今天,软件工程研究人员和实践者经常互换使用术语“反模式”和“气味”。然而,它们在概念上并不相同。维基百科上关于反模式的条目指出,反模式与坏实践或坏想法至少有两个不同之处。反模式是

一种常用的过程、结构或行为模式 最初看起来是对一种疾病的适当而有效的反应 问题,通常有更多的坏后果比有益的结果。”

它清楚地表明,选择反模式是因为相信它是当前问题的一个很好的解决方案(作为模式);然而,它带来的负债多于收益。另一方面,气味只是一种糟糕的实践,它会对软件系统的质量产生负面影响。例如,Singleton是一种反模式,God类(或不足模块化)是一种设计气味。

反模式是设计模式的补充。反模式是在特定情况下不应该使用的模板解决方案。

这是制造混乱的常见方法。例如,god/厨房墨水类(做所有事情)。