gpt4 book ai didi

design-patterns - 建厂的最佳方法

转载 作者:行者123 更新时间:2023-12-04 07:04:41 26 4
gpt4 key购买 nike

最近,我一直在阅读有关Factory模式的文章。我正在尝试找出实现它的最佳方法。在《 C#敏捷原则的模式和实践》一书中,建议创建这样的Factory:

public class ShapeFactoryImplementation : ShapeFactory {
public Shape Make(string name) {
if (name.Equals("Circle"))
return new Circle();
else if (name.Equals("Square"))
return new Square();
else
throw new Exception("ShapeFactory cannot create: {0}", name);
}
}

而不是...
public class ShapeFactoryImplementation : ShapeFactory {
public Shape MakeCircle() {
return new Circle();
}

public Shape MakeSquare() {
return new Square();
}
}

请告诉我您的想法?也许有更好的方法来实现工厂模式?

最佳答案

工厂模式的重点是将客户端与对象的创建分离。

在您的第二个示例中,客户端已对要创建的形状进行了硬编码,例如MakeCircle,因此将对象创建与客户端紧密地结合在一起。

关于design-patterns - 建厂的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7256289/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com