我正在努力理解抽象工厂设计模式并在许多示例中遇到错误。 如下图class: 在这个例子中,抽象工厂 class 必须是一个接口,负责创建抽象产品,在这个例子中是银行和贷款。 当我们调用 get_Bank() 和 get_Loan() 两个方法来创建对象时,由于抽象打破了接口隔离原则,我们必须在 B ...
我正在努力理解抽象工厂设计模式并在许多示例中遇到错误。 如下图class: 在这个例子中,抽象工厂 class 必须是一个接口,负责创建抽象产品,在这个例子中是银行和贷款。 当我们调用 get_Bank() 和 get_Loan() 两个方法来创建对象时,由于抽象打破了接口隔离原则,我们必须在 B ...
我目前正在从事一个机器学习项目,希望我的 Python 程序能够将各种测量数据格式的测量数据处理/转换为 PyTorch 兼容数据集 class。这实质上意味着我需要从这些测量中提取样本和标签这样我就可以实例化我的数据集 class。 现在:我主要使用一个libraryA ,它提供了我加载和预处理 ...
我想在 C# 学习设计模式,我的朋友给我写了一些抽象工厂模式的代码(我认为)。 从我所看到的代码创建一个工厂(Fa),这个工厂(Fa)然后创建另一个基于枚举的工厂(Fb)然后那个工厂(Fb)创建一个具体的 class 可用于调用 API 等. 我可以创建一个工厂 (Fb) 并创建 class 但是当 ...
一切正常,直到实现的构造函数相同。 但是,当构造函数不同时,我有一种进退两难的境地。 没问题还是可能存在架构问题? 这是代码:public class CategoryViewFactory : ICategoryViewFactory { private readonly ActiveP ...
在Design Patterns Elements of Reusable Object-Oriented Software中,它指出抽象工厂模式中的一个问题如下: 支持新产品很困难。 扩展抽象工厂以生产新型产品并不容易。 那是因为 AbstractFactory 接口固定了可以创建的产品集。 支 ...
我是kotlin的新手。 我正在研究kotlin中使用的一些设计模式。 我遇到了抽象工厂设计,并且在为 class 创建 object 时不断收到此错误。 我尝试了堆栈溢出的其他解决方案,例如缺少花括号,但徒劳无功。 我附上了整个代码来解决。 有人可以帮我解决这个问题吗? 提前致谢。 控制台中的错误 ...
抽象工厂通常构造一个相关对象的“家族”,每个对象都从属于各自的抽象。 这里的例子可以构建植物和植物采摘器; OrangeFactory构造Oranges和OrangePickers , AppleFactory构造Apples和ApplePickers 。 但是,如果家庭只由一个抽象组成,它仍 ...
我正在使用 pydantic 来管理支持不同数据集的应用程序的设置。 每个都有一组可覆盖的默认值,但每个数据集它们是不同的。 目前,我通过验证器正确实现了所有逻辑:from pydantic import BaseModel class DatasetSettings(BaseModel): ...
吃了些蔬菜: 我们将专注于洋葱并对其进行处理:我有一个通用蔬菜处理器的通用接口和一个特定于洋葱的接口: 以及通用工厂: 最后这不起作用: 错误是: 如何让它理解 IVegetable 的底层类并将处理器转换为它的相应类型? ...
我正在实现抽象工厂模式,有没有办法不对不同的 class 类型使用抽象 class? 我的课程结构是这样的: Structure Project Rectangle.cs 和 Square.cs 实现 IShape.cs: Structure Class for AbstractShapeFac ...
抽象工厂模式在我们有一系列相关类时很有用,我们希望在不依赖实现的情况下实例化它们。 但是,在这种情况下使用工厂方法模式有什么问题呢? 假设我们要构建跨平台的 UI 元素,例如 Windows 和 macOS 的TextBox和Button ,并抽象地对待它们。 这是我们使用抽象工厂模式的典型情况, ...
我想创建一个抽象工厂。 这是我尝试过的。 //抽象 class 工人 // 扩展工人的电工 class //梅森class // 接口 WorkerAbstractFactory // //应用程序 class 你认为它可以这样工作吗? 现在,如果我真的想要一个具体的 object,怎么 ...
我一直试图弄清楚在 Python 中何时何地使用不同的模式。 我遇到了这个文件: https : //python-patterns.guide/gang-of-four/abstract-factory/ 现在这让我想知道我该如何做他在我的代码中所说的。 这是我的实现是一个抽象工厂。 不确定它是 ...
我正在尝试创建一个复杂的 GUI,假设主面板包含一个列表面板和按钮面板。 按钮面板将再次包含几个按钮。 构建顺序将是这样的: 这个 GUI 有 2 种风格:Linux 和 Windows。 如何使用构建器设计模式和抽象工厂设计模式设计此 GUI? 类图会是什么样子? 我了解构建器和抽象工厂模式 ...
在用 C++ 进行抽象工厂的第一次实验时(在阅读现代 C++ 设计 - A. Alexandrescu - 第 9 部分)我有一个问题。 如果类层次结构如下所示: 我有这个抽象工厂代码: 并在这样的客户端代码中使用它。 它可以满足我的需求,并且看起来像是互联网示例的很大一部分。 但是在这个版本的抽象 ...
假设我们要创建按钮和文本区域。 我们可以为 Windows 或 Mac 创建它们。 据我了解,有两种“switch”或“if”语句,一种用于选择所需的工厂,一种用于选择所需的产品。 但是如果我想添加“Linux”工厂和“文本字段”产品,我应该编辑代码并将第三个选项添加到“if”或“switch”语 ...
已经一次又一次地问这个问题,但是回复有点老了,我有点绝望地希望自从“无法完成”回复以来有所改变。 语境: class AbstractBuildObject {} class Hammer extends AbstractBuildObject{} class Nail ext ...
我试图弄清楚如何键入private factories: Record<...> ,它将包含aKey: aFactoryInstance的键值对。 我试过Record<string, TemplateFactory> ,它有两个问题; 1. 它们的键不只是任何字符串,而是一 ...
对于单元测试,我正在尝试创建一个满足以下要求的工厂: (1) 它可以创建任意对象(例如Timer和TimerMock ) (2) 它返回unique_ptr到 Base class 到这些对象(例如unique_ptr<TimerInterface> ) (3) 工厂本身也可以作 ...
我试图理解抽象工厂模式,而这真的很难。 我从 Head First Design Patterns 书中看到了以下示例,试图描述依赖关系以及为什么依赖是不好的。 但是,我不理解该代码示例的以下说法。 因为对比萨饼具体实现的任何更改都会影响DependentPizzaStore ,所以我们说Depen ...