
将一个类转换为另一个类的设计模式
我有一个名为GoogleWeather的类,我想将其转换为另一个CustomWeather类。有没有可以帮助您转换类的设计模式?回答:需要做出一个关键决定:您是否需要转换生成的对象以反映对源对象的将来更改?如果您不需要这样的功能,那么最简单的方法是将实用程序类与静态方法一起使用,这些静态方法根据源...
2024-01-10
承诺重试设计模式
继续重试直到承诺解决的模式(带有delay和maxRetries)。 在结果满足条件之前一直重试的模式(带有delay和maxRetries)。具有无限重试次数(提供延迟)的高效内存动态模式。 继续重试,直到承诺解决为止(该语言是否有任何改进社区?)Promise.retry = function(fn, times, delay) { return new Promise(function(resol...
2024-01-10
管道设计模式的实现
这是关于管道实施的设计问题。以下是我的幼稚实现。管道中各个步骤/阶段的接口:public interface Step<T, U> { public U execute(T input);}管道中的步骤/阶段的具体实现:public class StepOne implements Step<Integer, Integer> { @Override public Integer execute(Integer input) { return input + 100; ...
2024-01-10
什么设计模式更好?
当用2个对象作为参数编写函数时,比如比较函数或向量sum,什么设计模式更好?什么设计模式更好?1)将函数写入对象类中,只取得第二个对象。2)用一个静态函数写一个外部类,它将得到两个对象。为什么和什么时候?回答:在Java中,你有Comparable.compareTo(o1)是代表一个对象的执行,并采取第...
2024-01-10
如何调用PIMPL设计模式中的参数化构造函数?
如何将PIMPL设计用于参数化构造函数?如何调用PIMPL设计模式中的参数化构造函数?/* ProcessImpl.h */ class ProcessImpl { public :ProcessImpl(); ProcessImpl(ProcessID thirdParty_pid); ~ProcessImpl(); } /* Process.h */ class Process { public:virtual ~Process() {}; Process(); Proc...
2024-01-10
可以替换if语句的设计模式
我们的应用程序越来越复杂,它主要具有3个流程,并且必须基于3种类型之一进行处理。这些功能中有许多彼此重叠。因此,当前的代码完全包含if-else语句,它们全都被弄乱了并且没有组织。如何制作模式以使3个流清楚地彼此分开,但要利用可复用性。请提供一些想法,这是一个MVC应用程序,我们需...
2024-01-10
设计宝石注册模型问题
我有一个年龄检查我的用户,如果他们想注册我的应用程序,他们必须是一定的年龄。我使用的是设计宝石,但在我的用户模型中创建了一个方法来检查年龄......我得到一个错误,指出无论我想要做什么,都不能因为一个零级。基本上我有一个用户,但用户的birth_date没有保存。设计宝石注册模型问题...
2024-01-10
您能解释一下上下文设计模式吗?
我已经开始阅读有关Context设计模式的文章。这是我从文本中了解的内容:您有一个包含所有变量的映射您可以将其传递给任何需要它的人,这样就不必将所有变量都作为方法参数发送我“得到”了吗?回答:我“得到”了吗?对不起,还不完全是。Context Object的目标不是将大量参数隐式传递给方法...
2024-01-10
作为响应式设计的背景图像
如果我有这组divs,如何在浏览器调整大小时更改每个背景图像的尺寸?基本上把盒子的所有内容作为响应式设计。作为响应式设计的背景图像所以最大宽度是图像的尺寸。<div class="box"> <div class="dog_1"></div> <div class="dog_2"></div> <div class="dog_3"></div> <div class="dog_4"></div> </div> div[class*='dog_'] ...
2024-01-10
我需要一个设计模式来为我的程序提供撤消功能
我需要一个设计模式来为我的程序提供撤消功能。我已经使用了Memento,但我的课程需要另一个。我需要一个设计模式来为我的程序提供撤消功能回答:command pattern是撤消模型的经典模式。基本上将每个动作封装在一个对象(命令)中,然后使每个命令都能够执行相反的动作。保留应用的命令列表,...
2024-01-10
