按照惯例,类通常被命名为名词,方法命名为动词,接口命名为形容词.

代理的常见命名约定是什么?或者,当代理在类型和其他事物中列出时,有什么好的方法来区分它的名称?

我的直接假设是将委托命名为adjective,因为单个方法接口通常可以替换为委托.

一些 idea :

delegate object ValueExtracting(object container);

delegate object ValueExtractor(object container);

delegate object ValueExtractionHandling(object container);

delegate object ValueExtractionHandler(object container);

推荐答案

就我个人而言,我使用了几种不同的模式:

[Task][State]Handler-UITaskFinishedHandler

[Event]Handler-ControlLoadedHandler

[Function Name]Delegate-DoSomeWorkDelegate——当我需要创建一个委托来调用另一个/新线程上的函数时使用

[Task]Callback-ContainerLoadedCallback-当控件A启动一个操作时使用,该操作由控件B执行大部分工作,并且控件A已将一个依赖项传递给控件B(即,控件A可能已传递一个UI容器供控件B填充,需要通知才能实际显示容器)

当你有一个项目使用了大量多线程或异步WCF调用时,你最终可能会有很多代理在四处游荡,所以采用一个至少对你有意义的标准是很重要的.

.net相关问答推荐

";Make Async ValueTask/ValueTask方法分期分配发生了什么?

在数据网格中:如何在更改单元格 A 中的值后显示单元格 B 中的更改

向从 .NET 序列化的对象添加 Xml 属性

如何判断属性设置器是否公开

如何找到windows服务exe路径

如何获取控制台应用程序的执行目录

将毫秒转换为人类可读的时间间隔

整个命名空间的SuppressMessage

如何解决请确保文件可访问并且它是有效的程序集或 COM 组件?

是什么让 Enum.HasFlag 这么慢?

OpenCV的.Net(dotNet)包装器?

如何更改 double.ToString() 中小数点的符号?

变量MyException已声明但从未使用

在 C# 中使用委托

向 .NET 应用程序添加脚本功能

风格上的差异:IDictionary vs Dictionary

一个接口是否应该继承另一个接口

.NET 高级别的 .NET 4.0 和 .NET 4.5 的区别

DateTime.Compare 如何判断日期是否小于 30 天?

在 try/catch/finally 中等待的一个很好的解决方案?