原型设计模式与ICloneable

时间:2011-03-30 02:13:31

标签: c# design-patterns prototype-pattern

我正在学习设计模式。今天我正在阅读 Prototype DP ,发现它用于克隆对象。由于我们在.Net中有一个 ICloneable接口,我们还需要原型DP吗?或ICloneable实现Prototype DP?选择两者之间的任何指导方针?

2 个答案:

答案 0 :(得分:9)

通过实现像ICloneable这样的界面并不意味着你遵循一个模式,所有这些都取决于你想要实现的目标。如果你愿意的话,这有点哲学,但我只想强调这一点。模式具有力和意图,并且根据定义是常见问题的一般解决方案。

在这个特定的例子中,是的,正确地实现 接口可以引导你了解模式的意图,实际上维基百科文章使用ICloneable接口为其用Java编写的exameple :http://en.wikipedia.org/wiki/Prototype_pattern。 当然,您可以使用另一种方法,使用您的另一个接口,并不要求模式使用ICloneable接口。

希望这有助于并欢迎模式世界:)

答案 1 :(得分:4)

设计模式不是语言中固有的东西,但它们是一般问题的常见解决方案。它们是一个概念,可以用许多不同的方式和许多不同的语言实现。