C# 原型设计模式与iClonable
我正在学习设计模式。今天我阅读了关于原型DP的文章,发现它被用来克隆一个对象。既然我们在.Net中有一个可克隆接口,我们还需要原型DP吗?还是C# 原型设计模式与iClonable,c#,design-patterns,prototype-pattern,C#,Design Patterns,Prototype Pattern,我正在学习设计模式。今天我阅读了关于原型DP的文章,发现它被用来克隆一个对象。既然我们在.Net中有一个可克隆接口,我们还需要原型DP吗?还是ICloneable实现了原型DP?有什么准则可以在两者之间做出选择吗 只实现像ICloneable这样的接口并不意味着你在遵循一种模式,这完全取决于你试图达到的目的。如果你愿意的话,这有点哲学性,但我只想强调这一点。模式具有力量和意图,根据定义,它是一个常见问题的通用解决方案 在这个特定的示例中,是的,正确实现接口可以引导您找到模式的意图,事实上,wik
ICloneable
实现了原型DP?有什么准则可以在两者之间做出选择吗 只实现像ICloneable
这样的接口并不意味着你在遵循一种模式,这完全取决于你试图达到的目的。如果你愿意的话,这有点哲学性,但我只想强调这一点。模式具有力量和意图,根据定义,它是一个常见问题的通用解决方案
在这个特定的示例中,是的,正确实现接口可以引导您找到模式的意图,事实上,wikipedia文章使用了iclonable
接口作为其Java编写的示例:。
当然,您可以使用另一种方法,使用您的另一个接口,而不是模式使用ICloneable
接口的要求
希望这有助于并欢迎来到模式世界:)设计模式不是语言固有的东西,但它们是一般问题的常见解决方案。它们是一个概念,可以用许多不同的方式和语言来实现。不要实现IClonable接口:事实并非如此。设计模式是语言中功能缺失的“拐杖”。因此,使用一种好的编程语言,您可以继承部分或大部分模式。看见