编写高质量代码改善C#程序的157个建议——建议137:委托和事件类型应添加上级后缀

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编写高质量代码改善C#程序的157个建议——建议137:委托和事件类型应添加上级后缀相关的知识,希望对你有一定的参考价值。

 

建议137:委托和事件类型应添加上级后缀

委托类型本身是一个类,考虑让派生类的名字以基类名字作为后缀。事件类型是一类特殊的委托,所以事件类型也遵循本建议。

委托和事件的正确的命名方式有:

    public delegate void HttpContinueDelegate(int statusCode, System.Net.WebHeaderCollection httpHeaders);

    public delegate bool ValidateValueCallback(object value);

    public delegate void AsyncCallback(IAsyncResult ar);

    public delegate void PropertyChangedCallback(DependencyObject d,DependencyPropertyChangedEventArgs e);

    public delegate void MouseEventHandler(object sender, MouseEventArgs e);

    public delegate void SizeChangedEventHandler(object sener, SizeChangedEventArgs e);

    public delegate void UnhandledExceptionEventHandler(object sender, UnhandledExceptionEventArgs e);

若果用传统方式,我们可能看不出来这些类型是有基类的,但是委托和事件的关键字delegate和event已经指明了后面类型的基类是Delegate。委托按照委托类型的作用又单纯分为Delegate结尾和CallBack结尾,我们在声明委托的时候一定要注意区分这一点。如果委托用于回调性质,则使用CallBack结尾。

委托和事件不妥的命名方式,就是从命名上根本看不出它们的类型,如下:

    public delegate void DoSomething(int a, int b);

    public delegate void MouseClick(int a, int b);

 

 

 

转自:《编写高质量代码改善C#程序的157个建议》陆敏技

以上是关于编写高质量代码改善C#程序的157个建议——建议137:委托和事件类型应添加上级后缀的主要内容,如果未能解决你的问题,请参考以下文章

编写高质量代码改善C#程序的157个建议——建议141:不知道该不该用大括号时,就用

编写高质量代码改善C#程序的157个建议——建议52:及时释放资源

编写高质量代码改善C#程序的157个建议——建议41:实现标准的事件模型

编写高质量代码改善C#程序的157个建议——建议67:慎用自定义异常

编写高质量代码改善C#程序的157个建议——建议111:避免双向耦合

编写高质量代码改善C#程序的157个建议——建议143:方法抽象级别应在同一层次