observer-pattern相关内容
我最近开始深入研究 C#,但我一生无法弄清楚在语言中实现观察者/可观察模式时委托是如何工作的. 谁能给我一个超级简单的例子来说明它是如何完成的?我用谷歌搜索了这个,但我发现的所有示例要么过于具体,要么过于“臃肿". 解决方案 观察者模式通常使用 事件. 这是一个例子: 使用系统;类可观察{公共事件EventHandlerSomethingHappened;公共无效 DoSom
..
我意识到这个问题与事件处理有关,并且我已经阅读了有关 Python 事件处理程序和调度程序的信息,所以要么它没有回答我的问题,要么我完全错过了信息. 我希望在值 v 发生变化时触发对象 A 的方法 m(): 例如(假设金钱使人快乐): global_wealth = 0类人()def __init__(self):自我财富 = 0全球 global_wealth# 这里是属性应该在的
..
我有一个远程集合 接口 Foo {id:字符串;属性:任何;} 我可以使用 a 类 FooAPIService {find(skip = 0): 承诺{//承诺最多 5 Foos.要获得更多信息,请使用 skip >1//分页是服务器端}on(event: string, callback: (foo: Foo) => any) {//注册事件处理程序,用于事件:创建、更新、删
..
我想知道是否可以在 iPhone 应用程序中接收有关自动对焦的通知? 即,是否有一种方法可以在自动对焦开始、结束、成功或失败时收到通知......? 如果是,这个通知名称是什么? 解决方案 我找到了适合我的案例的解决方案,以找到自动对焦何时开始/结束.它只是在处理 KVO(键值观察). 在我的 UIViewController 中: //回调- (void)observ
..
我正在尝试创建一个简单的 Android 应用程序,它有一个 ActivityList 信息,当应用程序启动时,我计划启动一个将不断计算数据(它会发生变化)的服务,我希望 ActivityList 是与服务在应用生命周期内计算的数据同步. 如何设置我的 Activity 以监听服务?这是解决此问题的最佳方法吗? 例如,如果您想象一个股票价格列表 - 数据将定期更改,并且需要与(在我的情
..
我考虑过使用观察者或回调.什么时候应该使用观察者? F.e.您可以执行以下操作: # 用户模型类用户 或者你可以创建一个观察者,让它在用户被创建时观察... 你推荐什么? 解决方案 回调的生命周期更短:您将其传递给一个函数以供调用一次.它是 API 的一部分,因为您通常无法在不传递回调的情况下调用该函数.这个概念与函数的作用紧密结合.通常,您只能传递一个回调.. 示例
..
我正在研究 Observables 及其与 EventEmitter 的差异,然后偶然发现了 Subjects(我可以看到 Angulars EventEmitter 是基于它的). 似乎 Observables 是单播的,而 Subjects 是多播的(然后一个 EE 只是一个将 .next 包装在发射中以提供正确接口的主题). Observables 看起来很容易实现 class
..
我想知道如何在java中设置我们自己的监听器.例如,我有一个将数字从1递增到100的函数.我想在值达到50时设置一个监听器.我该怎么做?请建议我任何教程. 解决方案 查看使用侦听器的任何类的来源.其实很简单: 为你的听众创建一个界面,例如MyListener 维护一个MyListener 的列表对于侦听器应该侦听的每个事件,遍历列表并使用一些事件参数调用适当的方法 关于观察
..
我将我的问题分为短版和长版,供手头时间不多的人使用. 简短版本: 我需要一些架构来构建具有提供者和消费者插件的系统.提供者应该实现接口 IProvider,消费者应该实现 IConsumer.正在执行的应用程序应该只知道 IProvider 和 IConsumer.消费者实现可以询问正在执行的程序集(通过 ServiceProcessor)哪些提供者实现了 InterfaceX 并返回
..
我们通常如何处理一个元素是指向对象的指针的向量?我的具体问题是下面提供的代码末尾的注释.谢谢. A 类{上市:虚拟 int play() = 0 ;};B类:公共A{上市:int play() {cout
..
假设我有两个视图模型,每个视图模型都有一个 observable 属性,表示不同但相似的数据. function site1Model(username) {this.username = ko.observable(username);....}功能站点2模型(用户名)= {this.username = ko.observable(username);....} 这些视图模型是独立的,不一
..
我在 Eclipse 中编写 GWT 应用程序时遇到此错误 接口观察者不能实施了不止一次不同的论点:观察者和观察者 public class CompositeWordLists extends Composite implementations Observer, Observer 这是界面 公共接口Observer{公共无效更新(T o);}
..
Java 9 出来了,Observer 已被弃用.这是为什么?这是否意味着我们不应该再实现观察者模式? 最好知道什么是更好的选择? 解决方案 这是为什么?这是否意味着我们不应该再实现观察者模式了? 先回答后半部分—— YES,这确实意味着你不应该再实现 Observer 和 Obervables. 为什么不推荐使用 - 他们没有为应用程序提供足够丰富的事件模型
..
假设您的一个 Ruby on Rails 应用程序中有一个 ActiveRecord::Observer - 您如何使用 rSpec 测试这个观察者? 解决方案 您走在正确的轨道上,但在使用 rSpec、观察者和模拟对象时,我遇到了许多令人沮丧的意外消息错误.当我规范测试我的模型时,我不想在我的消息期望中处理观察者行为. 在您的示例中,在不知道观察者将对模型做什么的情况下,没有一种很
..
我们最近开始在公司进行合规性推动,并且需要保留当前在 Rails 应用程序中管理的数据更改的完整历史记录.我们已获准将每个操作的描述性内容简单地推送到日志文件中,这是一种相当不显眼的方式. 我倾向于在 ApplicationController 中做这样的事情: around_filter :set_logger_usernamedef set_logger_usernameThread.
..
在我看来,GOF 中描述的观察者设计模式与各种工具包中的侦听器实际上是同一回事.概念之间是否存在差异,或者监听器和观察器真的是一回事. (我不是在寻找任何特定的计算机语言实现,我只是想从设计的角度了解差异(如果有的话).是的,我知道关于 SOF 的类似问题有几个答案,但它们'植根于关于特定语言的特定问题——我正在寻找设计答案,而不是语言答案.) 解决方案 术语“侦听器"是否指的是观察
..
我正在尝试设计一个异步框架,并想知道人们认为回调模式与观察者模式的优缺点. 回调模式://示例回调公共接口回调{公共无效通知(方法结果结果);}//示例方法公共类工人{public void doAsyncWork(回调回调){//做工作回调.通知(结果);}}//示例观察者模式公共接口事件监听器{公共无效通知(方法结果结果);}公共类工人{私人 EventListener 监听器;公共 reg
..
观察者设计模式是否已经在 STL 中定义(如 Java 中的 java.util.Observer 和 java.util.Observable)? 解决方案 这里是一个参考实现(来自 维基百科). #include #include #include #include 类 SupervisedString;类 IO 观察者{上市:virtual void handleEvent(con
..
据我所知,观察者模式允许多个观察者监视单个主题.是否有相反情况的模式?是否有一种模式可以让单个观察者监视多个主体并在其中任何一个引发通知事件时做出响应? 解决方案 观察者模式仍然可以使用:只需将相同的对象寄存器作为许多被监视对象的观察者即可.您可能希望“通知"事件接收某种观察对象标识符(“this"指针、唯一 ID 号等),以便观察者对象可以选择适合报告事件的对象的操作.
..
我想在 Python 中为几个工人实现 Observable 模式,并且遇到了这个有用的片段: class 事件(对象):经过可观察类(对象):def __init__(self):self.callbacks = []定义订阅(自我,回调):self.callbacks.append(回调)定义火(自我,**属性):e = 事件()e.source = self对于 attrs.iterite
..