问题标签 [delegation]
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.
python - 委托与继承python
我刚刚在 python 中遇到了委托,无法理解委托和继承之间的区别。为什么要使用委托而不是继承?
ruby-on-rails - 在两个模型之间共享委托方法
模型 A 和模型 B 共享以下委托方法:
这样我就不必在每个课程中重复相同的方法,以一种不错的 DRY 方式在两者之间共享它们的最佳方法是什么?
iphone - iPhone Google Analytics SDK 委托和多个帐户问题
我正在我的 iPhone 应用程序中实现 google Analytics SDK。我让它使用以下代码:
在我的分析帐户中,我得到了想要的结果。然后我决定(不要问我为什么)也尝试将我的跟踪数据发送到第二个分析帐户。对于好奇的人:一个帐户用于网页和 iPhone 应用程序统计,另一个应该只用于 iPhone。
我巧妙的计划是创建第一个 sharedTracker,调度它,停止它并对第二个做同样的事情:
我添加了委托方法,以便了解正在调度的内容,并确定 SDK 是否发出了两个不同的请求,但似乎我无法调用我的委托方法!删除第二个跟踪器的代码也无济于事
所以,我的问题是:如何实现 2 个 gAnalytics 帐户以及如何让我的委托方法完成它应该做的事情 - 在调度后被调用 :)
在此先感谢,卢卡
perl - Perl OO 使用 Moose - 编写委托示例的最佳方式?
Perl 的 Moose 与其他对象系统不同,因此如何将其他语言已知的示例翻译成 Moose 术语并不总是很清楚。考虑以下 Rectangle 和 Square 的 Java 示例,其中 Square 实例(正方形是特殊的矩形)将对 area() 的调用委托给它持有私有引用的 Rectangle 实例。
我拼凑了以下 Perl/Moose/Mouse 版本,我不确定这是不是正确的做事方式,所以我将其提交给聚集在这些大厅的专家公会的判断:
这行得通,但由于我没有看到太多 Moose 在行动,我只是不确定这是要走的路,或者是否有更简单的方法。感谢您提供任何反馈,或提供更多 Moose 用户级别讨论的建议。
ruby - 我怎样才能委托一个通过它附带的块的调用?
我正在遍历一个对象图,并希望将一个块传递给它,该块将在一个方法的结构的每个节点上运行 - 我们称之为visit。
在顶部,我将使用一个块进行调用,并且我想将初始调用委托给访问根对象以访问其他对象。我可以使用 &last_parameter_name 将块解压缩到本地的 proc 中 - 但是如何在我的委托调用中将 proc 转回块?
这是一个简化的示例,我调用first(...)并希望将块委托给我对second(...)的调用
注意:我需要在这里对 first() 和 second() 有相同的约定 - 即它们需要采用相同的东西。
阅读并尝试了答案后,我想出了一个更完整的工作示例:
iphone - 关于 Objective-C 中委托的问题,CLLocationManager
我有点困惑委托是如何工作的。我相信这个想法是让另一个班级为你做这项工作并给你回电话。所以如果你做了这样的事情:
如果我 NSLog viewDidLoad 中的坐标,即使我 startUpdatingLocation,我的 locationCoordinate 属性的值也是 0。但是如果我 NSLog 委托方法中的值,如下所示:
我得到一个实际的位置值。我认为通过使用委托方法,我的 locationProperty 会被设置,但似乎没有。我是否错误地理解了委派?谢谢。
ldap - Java 中的 SPNEGO 和委托
我使用 SPNEGO 来验证我的 webapp。我想使用票证委托在服务器端对 LDAP 进行身份验证。但是服务器端没有票证缓存,因为登录(kinit)是在客户端完成的。请问我该怎么做?
p>delegates - 为什么类委托如此神秘?
这可能是另一个厚实的新手问题,会让每个人都拍他们的额头并说“Duhhhhhh!” 但是,在又长时间阅读和观看了无数 Brad Larson 视频之后,我对为什么总体上的委托,特别是 CALayer 委托似乎是一个如此神秘的主题感到困惑。
除非您想要高度封装,否则所有书籍和 Larson 博士都在谈论“不要对 CALayers 进行子分类”,但我在任何地方都找不到 CALayer 委托可以提供的好处的简洁明了的例子。每个人似乎都将主机视图控制器对象用作某种敷衍的委托,或者他们将所有内容都放入 App 委托中,“作为可以实现的简短示例”。
我正在尝试预先学习“最佳实践”——因为我太新了,因为我不想发展任何糟糕或邋遢的编程特征——所以我热衷于检查我在几分钟内采取的每一个新步骤细节。据我所知,CALayer 委托类中只有大约 3 个委托特定的方法。它们是“displayLayer:”、“drawLayer:InContext:”和“actionForLayer:ForKey:”。在我的 Opacity 生成的 Quartz 东西中,我使用了我想在运行时操作的颜色变量,并且在没有子类化 CALayer 的情况下这样做。使用键值对的副作用之一是存在一个名为“defaultValueForKey:”的类方法,它根据用于识别颜色的键值来描述我的颜色的初始值。这(显然)不是 CALayer 委托方法。那么如何在没有子类化 CALayer 的情况下实现此代码(之后,所有代码都只设置一个默认值)?只要您只需要少数特定于委托的方法,委托似乎就可以了。
谁能解释为什么在实现委托时,Apple 的研究人员没有简单地将方法定义编译单元从类单元转移到分配的委托单元。例如,只需在类(或子类)中通常可用的每个方法前面放置一个初始参数即可;'forLayer:(CALayer *)TheRest:OfThe:方法'?这样,一个简单的 switch 或 if-then 堆栈可以将类的常用方法应用到一个集中的对象 - 委托中。
正如我在开始时所说,我可能遗漏了一些非常基本的东西,但谁能告诉我如何在没有子类化 CALayer 的情况下实现所有键值颜色变量初始化?
提前致谢,VV
java - 委托事件模型模式 Java
在应用这种模式委托事件模型时,将所有代码放在fire...
方法中并从公共方法传递参数是否正确?
像这样
或者我应该在addBananas
方法中使用此示例中的添加到列表部分吗?因为如果我这样做,我将没有机会将香蕉对象“附加”到将传递给侦听器的事件对象,对吗?
asp.net - ASP.NET - 如何使用嵌套用户控件传播事件
我在页面上有嵌套控件。前任:
当子控件引发事件时,我希望页面处理该事件。有什么好方法可以做到这一点?
在这里使用事件和代表似乎是个好主意。
所以我试图在我的页面的 Page_Init 上执行以下操作:
什么是这样做的好方法?