原型是反模式吗?
Is Prototype an anti pattern?
当 Joshua Bloch 提到 Cloneable 接口在 Java 中被破坏时,为什么使用 clone()
方法来促进对象创建的 Prototype 模式在 [=14] 中不被视为反模式=] 发展?
"It's a shame that Cloneable is broken, but it happens." - Joshua Bloch
不,原型不是反模式。
Prototype Design Pattern 与语言无关。它适用于许多其他面向对象的编程语言,并且有多种可能的实现。
虽然设计到 Java class 库中的实现确实是 broken,但这并不意味着模式也被打破了。这意味着如果你想在你的设计中使用这个模式,你应该远离对它的内置支持,而是自己制作。
当 Joshua Bloch 提到 Cloneable 接口在 Java 中被破坏时,为什么使用 clone()
方法来促进对象创建的 Prototype 模式在 [=14] 中不被视为反模式=] 发展?
"It's a shame that Cloneable is broken, but it happens." - Joshua Bloch
不,原型不是反模式。
Prototype Design Pattern 与语言无关。它适用于许多其他面向对象的编程语言,并且有多种可能的实现。
虽然设计到 Java class 库中的实现确实是 broken,但这并不意味着模式也被打破了。这意味着如果你想在你的设计中使用这个模式,你应该远离对它的内置支持,而是自己制作。