10 C#代表在现实世界中的使用 已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 6年前关闭。 我认为我在概念上理解C#代表,但是,我一直在努力寻找一个有用的现实示例。您能否提供一些答案,详细说明在实际应用程序中如何使用C#委托以及它们使您能够解决哪些问题。 16 c# delegates
5 使用Func代替IoC接口 上下文:我正在使用C# 我设计了一个类,为了隔离它并使单元测试更容易,我传入了它的所有依赖关系。它在内部没有对象实例化。但是,不是引用接口来获取所需的数据,而是让它引用通用的Funcs返回所需的数据/行为。当注入其依赖项时,我可以使用lambda表达式来实现。 对我来说,这似乎是一种更好的方法,因为在单元测试期间我不必做任何繁琐的模拟。另外,如果周围的实现有根本变化,则只需要更改工厂类即可;无需更改包含逻辑的类。 但是,我之前从未见过IoC这样做,这使我认为我可能会缺少一些潜在的陷阱。我唯一想到的是与未定义Func的C#早期版本的轻微不兼容,在我看来,这不是问题。 使用泛型委托/高阶函数(例如Func for IoC),而不是使用更具体的接口时,是否存在任何问题? 15 architecture interfaces inversion-of-control delegates
2 什么是委派,为什么它在iOS编程中很重要? 目前,我正在自学iOS编程,我发现真正难以理解的一个概念是委托。它是什么?为什么以及如何使用?有什么好处?我正在阅读的书中的技术性著作很难理解。 11 programming-practices mvc ios mobile delegates
5 与观察者模式相比,委托模式有什么优势? 在委托模式中,只有一个对象可以直接侦听另一对象的事件。在观察者模式中,任意数量的对象都可以侦听特定对象的事件。当设计一个需要通知其他对象事件的类时,为什么要在观察者模式上使用委托模式?我认为观察者模式更加灵活。您现在可能只有一个观察者,但是将来的设计可能需要多个观察者。 9 design-patterns delegates observer-pattern