问题标签 [proxy-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.
java - C++ 类中的内部代理实现
我正在调查 Dropbox 发布的跨平台库。以下java代码来自它。我想在我的 Visual c++ 中实现同样的东西;先看java代码
这个java代码调用了一些jni c++类(它与AsyncTask同名)。所以它在java类中实现c++代理来维护jni端c++对象。
但我想用 MFC c++ 语言而不是 java 语言(通常用于测试目的)来做,所以我从上层 java 代码实现了 c++ 类。但我发现 c++ 没有静态类定义。以下代码显示错误
那么我如何实现内部静态类,它是外部类的子类。
java - 代理模式具体类隐藏实现细节
我一直在阅读有关 java 代理模式和调用处理程序的信息,并且到处都可以看到客户端可以使用具体的类构造。
例如,
用户可以直接创建实例TwitterStub
并访问方法。我想知道是否有办法不暴露或避免通过客户端构建具体类?
有没有更好的办法 ?
scala - 使用功能回调/代理模式实现scala缓存
如何使用函数式编程实现缓存
几天前,我遇到了使用 scala 的回调和代理模式实现。如果值不在地图中,则此代码应仅应用内部函数。但是每次重新初始化地图并且值都消失了(这似乎很明显。
如何在不同的函数调用之间一次又一次地使用相同的缓存
objective-c - 如何在 Objective-c 中实现代理模式(使用运行时和其他 objc 特性)
有时我需要在 ObjC中实现代理模式。如果我在运行时创建内部 主题并且不想将创建逻辑从代理中移出,我需要它。有时我在代理中使用几个对象,我也更喜欢使用 ARC 来内存管理。现在我使用 C++ 风格实现它:
我认为这不是最好的方法,我认为存在更简单的方法。我想使用 ObjC 运行时并自动转发消息。
如果不手动编写每个 set/get 方法,我怎么能做到这一点?
oop - 适配器和代理模式之间的确切区别是什么?
据我了解,适配器和代理模式都使两个不同/不同的类/对象相互兼容以进行通信。它们都是结构模式。我得到他们两个彼此非常相似。
有人能解释一下究竟是什么让它们不同吗?
编辑:我经历了这个问题。但我宁愿在适配器和代理之间进行仔细比较。
c# - 装饰器模式和泛型
常规界面:
通用接口:
现在上课:
类 'ComputationCache' 是一个 'decorated' 计算:
为了初始化装饰计算,我尝试了以下操作:
...这给出了以下错误”:
无法将源类型“ComputationCache”转换为目标类型“T”。
有人可以评论是否更好地使用:
对比
c++ - 算术类型代理
背景
我正在研究 C++11 JSON 映射类,以引入语法直观且安全的对象,这些对象可以将自身序列化/反序列化为 JSON 表示。
问题
我需要为算术类型(主要是int
, unsigned
, float
, double
)提供一个好的代理。如何实施这样的事情?第一个想法是实现模板类重载所有算术、位和比较运算符。但是为了避免不必要的工作,我应该写什么超载?那么演员表操作员呢?返回类型应该是什么operator+
?
简单的不完整实现展示了这个想法:
选择
但是我应该将原始 JSON 字段实现为代理类吗?也许有更好的方法。例如,我还考虑将内部值公开,所以不要写:
json.intField += 4;
用户必须写
json.intField.value += 4;
这种语法不像我希望的那样直观和清晰,但这也是一种选择。
对于每个告诉我如何在 C++ 中实现 JSON 的人——这不是我的问题!代理模式有更广泛的用途!
c++ - 右值中的代理类 - 如何实现赋值运算符?
假设我有一个简单的向量类,其中元素通过代理类访问。
向量类:
代理类:
如何将向量(或者更确切地说,代理)中的元素分配给 double 类型的变量?换句话说,我如何完成以下任务:
不幸的是,我不能写这样的东西:
因为operator=
必须是会员。