【发布时间】:2012-10-09 14:09:50
【问题描述】:
我试图了解什么是 Poltergeist 反模式,以及它与命令或委托模式有何不同。 我读过:
http://en.wikipedia.org/wiki/Poltergeist_(computer_science) http://sourcemaking.com/antipatterns/poltergeists
但不明白其中的区别...
所以为了清楚起见,我想看看它的代码示例(我更喜欢 C# 或 Java 语言)。
有人有吗?
【问题讨论】:
-
我目前正在阅读《反模式》一书,其中描述了此反模式。如果有人无法理解,我认为解释有问题,而我也无法理解。我没有看到短寿命对象的问题,事实上,“用方法对象替换方法”重构就是这样做的:它创建了一个实例短寿命的类。但他们有状态。也许 poltergeists 的问题在于它们是无状态的(例如,某些具有非静态方法的实用程序类)?但是仍然有使用(几乎)无状态类来实现多态行为的用例。
-
我注意到我们的代码库中有一个类,想知道它是否可能是一个恶作剧者。它的名字是ImageFromBmp。它的构造函数将 $url 作为唯一参数,并且有一种有用的方法可以返回图像实例。
-
有没有办法将此函数移到图像的类中?如果是这样,那么你可能有一个恶作剧。
标签: design-patterns anti-patterns