问题标签 [template-method-pattern]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 何时使用模板方法模式
您好我有一个问题,我必须对不同的数据集执行类似的步骤/操作(略有不同)(数据的结构也可能略有不同)。我需要执行几个步骤:连接、验证、根据需要构建错误消息、将数据结构更改为设定的格式并输出结果。
我正在查看模板方法模式,它看起来很适合这个 - 这听起来正确还是有更好的方法来解决这类问题?
我的目标是一种设计,可以轻松地将新数据集添加到系统中而不会破坏任何东西,并且可以更改错误报告等,而不会对系统产生太大影响。
我正在使用 php。
design-patterns - 私有方法模式的私有覆盖?(答案:NVI)
什么是被接受的行话(如果有的话)来描述只能虚拟调用的方法以及从基础中的其他方法调用的方法?我偶尔会看到这被称为回调,但这似乎与该术语的原始定义相去甚远。我什至不确定这是否值得被称为模式,但我试图在评论我的代码时变得更加精确。谢谢您的帮助!
摘要:这似乎被称为非虚拟接口模式,是模板方法模式的一个特例。感谢尼克和史蒂文的帮助!
java - 具有 3 种模式的 Java 客户端/服务器应用程序
我是一名大学生,我必须在月底之前完成以下任务......我必须用java编写一个实现3种模式的客户端/服务器应用程序:好莱坞原则,外观模式和模板方法模式......它必须至少有3-4 个域对象......数据库必须是 MS Access(我知道,我知道......)我应该查看的任何建议或资源,一些类似的工作,因为我不知道从哪里开始? 我正在考虑制作图书馆应用程序。我很感兴趣你会使用什么域对象以及你将如何开始......
c++ - typedef 从纯抽象基继承
编辑:发现重复
我已经将一些问题代码缩减为最简单的工作案例来说明以下内容:我在纯抽象基类中的 typedef 没有被派生类继承。在下面的代码中,我想将system_t
typedef 继承到ConcreteTemplateMethod
:
此代码按预期编译和运行。以下ConcreteTemplateMethod
是必需的,当删除时会导致编译器错误:
但是请注意,该system_t
类型已经typedef
在基类中。为什么在继承时必须包含另一个 typedef?
我意识到我可以通过 using限定system_t
派生中的类型名,但这有点冗长,我想避免每次继承并需要使用相同的 . 有没有办法可以在基础中定义?ConcreteTemplateMethod
typename TemplateMethod< Analyzer<T> >::system_t&
typedef
system_t
TemplateMethod
c++ - c++中的模板方法模式和长参数列表
在对我最后一个问题的有用答案之后,我开始对具有许多不同选项的类使用模板方法模式。在没有全部实现它们的情况下,我当前对该类对象的声明现在看起来像这样:
您如何处理长模板参数列表?我应该使用枚举/定义而不是真/假和数字吗?有没有常用的替代品?
javascript - javascript中的模板方法
我想在 javascript 中实现模板方法模式。
我有一个带有一些子类的 PropertyDecorator:OpenButtonDecorator、SeeButtonDecorator 等等。我想在属性装饰器中有下一个功能:
我怎样才能让这个场景工作?也许我实现了错误的继承:S(也有帮助:))
先感谢您。
design-patterns - 模式策略、访问者和模板方法有什么区别?
我正在上课,我们刚刚了解了这些设计模式。但是我看不出它们之间有什么区别。它们听起来很像,在抽象类之上创建具体类。有人可以帮我消除这个疑问吗?谢谢 (:
objective-c - 带有 Object C 的可可中的“模板方法模式”是什么?(语言比较思维)
这是模板方法模式,Java和C++可以很容易地用虚函数实现它。对象 C 如何实现这种模式?可可触摸(iOS)中的任何示例?
design-patterns - 构建器模式和模板方法之间的差异(构建器与模板)
模板模式在基类中提供算法,其步骤可以在派生类中修改。在构建器模式中,具体构建器公开了用于构建产品的方法,这些方法从 Director 类中调用。
我了解使用这些模式的目的有所不同。模板模式是一种行为模式,它改变模板中的一个或多个步骤,而构建器模式是一种创建模式。
除了上面所说的不同,还有其他的不同吗?
构建器模式中的主管不是作为模板模式中的基本模板。具体的构建器就像模板模式中的派生类一样,具有可替换的步骤?
有人可以澄清一下。谢谢你。
java - 具有实现特定参数类型的模板方法模式
当我想使用模板方法模式时,我经常遇到这种情况,但是模板方法需要不同类型的参数,如下所示:
这看起来不太好。提供的参数之一必须为空,并且所有服务都必须为其他类型实现虚拟 doProcess 方法。有没有更好的模式呢?你怎么处理这个?我不想使用构造函数,因为这些服务是 spring bean。同样的问题也适用于策略模式。