strategy-pattern

    0热度

    1回答

    https://gist.github.com/Integralist/5736427 这部分代码从上面的链接给我带来麻烦。 背景:下一个Chrome扩展运行“使用严格”的条件 var Greeter = function(strategy) { this.strategy = strategy; }; // Greeter provides a greet function th

    1热度

    1回答

    我正尝试使用策略模式来解决设计问题。这是一个大学系统。有一个用户,用户可以是学生,教授或管理员。所以,我有这样 <?php namespace Domain\Model\User; class User { private $user_type; public function __construct(UserType $user_type) {

    2热度

    1回答

    我正在使用C++。我有不同的类,基本上是做同样的事情的策略。我们有基类Strategy从中继承更先进的策略。 Strategy的每个直接或间接子类都有一个方法run()。高级策略通常会在其方法run()中调用其父项的方法run(),然后添加一些预处理或后处理。它也可能在循环内多次调用它。 现在所有这些策略都应用于相同的DataStruct。确实,每种策略都有独特的DataStruct。但是,在每个

    2热度

    2回答

    我试图神交策略模式,并与下面的例子上来: 我想,除了与移动不同的片创建一个基于国际象棋新游戏。 我也想使用策略模式来将行为(他们如何移动)注入件中。 但是,如果我们有Board,Piece,并MoveBehavior对象 Board - >Piece因为Board包含Piece小号 Piece - >Board因为一块需要在Board为越过一个参数为 MoveBehavior需要Board来决定什

    1热度

    1回答

    我正在研究即将用于供应的应用程序。情况并不复杂。该应用程序管理有权访问服务的组。根据组可以访问的服务,应用不同的业务规则。 第一个想法(简单和愚蠢)将是一个大的if/else或开关/案例,将涵盖所有的情况。这里是如何可能看起来像伪代码: if (serviceA OR serviceB) { doActionA(); } if(serviceA AND serviceC) {

    0热度

    1回答

    我目前正在研究OData服务(SAP网关),其中实体类型是在运行时期间生成的。我知道,这不符合OData最佳实践,实体类型应该是静态的,并且是设计阶段的一部分。 问题: 1.随着对元数据的请求,所有实体类型都在名为DEFINE的方法中生成(由SAP网关框架提供)。我想分离每个实体类型的生成,因为生成所需的信息对于每个实体类型都是不同的。稍后,将添加新的实体类型,这将为该代生成更多的指令。 策略模式

    -1热度

    3回答

    如何才能提高代码如下设计: class Foo { public Configuration configure() { return new Configuration().withPropertyA().withPropertyB(); } } class Configuration{ private boolean propertyA =

    0热度

    1回答

    我开发需要的“阶梯”的一些复杂的计算注入“策略”来确定(战略格局类型的实现),我不知道步骤subcalculation类注入到主的最佳方式类。 我已经研究过基于策略的设计,但读的政策设计是“编译时多态”不是运行。另外,我不确定如何使用模板,因为某些子计算类需要构造函数参数。 我已经开始实施虚拟“接口”类的每一个步骤和注射每一步在构造函数的unique_ptr但不知道这是否正确的“现代C++”的方式

    7热度

    5回答

    对于一个项目,我们有一个控制器/服务/ DAO架构。我们实行不同提供商的API的调用,所以我们在每一个控制器类结束了与一些像这样的样板代码: enum { PARTNER_A, PARTNER_B, PARTNER_C } public class MyController { @Resource PartnerASearchService partnerASearchS

    0热度

    1回答

    假设下面的类在运行时给定的单实例化对象从依赖注入容器中解决选择: class myClass { private container; // DI container function getMeAnObject(input) { switch(input) { case A: return this.container.get(singleton