在进程中触发事件和回调的正确/推荐方法是什么?

问题描述 投票:0回答:1

我负责内部代码库/ SDK的架构。我们对如何标准化触发API内部回调和事件的顺序感到矛盾。我们关注的有两种情况。

class Foo {

    public event Action StuffDone;

    public void DoStuff(Action callback) {

        StuffDone?.Invoke();
        callback?.Invoke();

    }

}

我们已经意识到有时调用事件和回调的顺序是相反的,而且看起来非常不一致,但我们找不到任何资源来备份一种排序方式或另一种方式。

提出了两个原因:

  1. 在qazxsw poi之前调用qazxsw poi,因为qazxsw poi是这个过程的一部分,而event只是调用者完成进程的信号。
  2. callback之后调用event,因为该进程的方法/调用者的调用者应首先通知进程完成,而不是其他实体(通过callback)。

将欣赏所有的反馈和资源!

c# events callback architecture
1个回答
0
投票

你想让它明确。事实上,当你调用行为很重要时。这意味着您应该考虑如何使用您的活动并进行相应的设计。你想要一个,另一个,还是两者兼而有之?无论如何,请尝试使事件的名称非常明确。

event
© www.soinside.com 2019 - 2024. All rights reserved.