建议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个建议》陆敏技

最新文章

  1. [No0000A7]批处理经常用到的变量及批处理>NUL详细介绍
  2. UWP应用开发系列视频教程简介 - Built for Windows 10
  3. WPFINotifyPropertyChanged使用技巧
  4. MMORPG大型游戏设计与开发(客户端架构 part5 of vegine)
  5. hdu 5877/ 2016 ACM/ICPC Dalian Online 1010 Weak Pair
  6. getElementsByName()以及获取checkbox对应文本text,
  7. Google 开源项目风格指南
  8. HTML JSP Servlet 的 相对路径 绝对路径
  9. C#的System.ICloneable接口说明
  10. Leetcode_9_Palindrome Number
  11. js array 对象
  12. Python输入数组(一维数组、二维数组)
  13. pecl 更换对应php版本
  14. MUI框架开发HTML5手机APP(二)--页面跳转传值&底部选项卡切换
  15. # 20175213 2018-2019-2 《Java程序设计》第2周学习总结
  16. IntelliJ IDEA2017 激活方法 最新的
  17. vue-devtoools 调试工具安装
  18. 在Oracle电子商务套件版本12.2中创建自定义应用程序(文档ID 1577707.1)
  19. ODI 创建Java EE Agent
  20. centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课

热门文章

  1. Converter(转换器)与Formatter(格式化) ,Validator(验证器)
  2. Windbg查看w3wp进程占用的内存及.NET内存泄露,死锁分析
  3. Vue源码学习(零):内部原理解析
  4. PowerMock单元测试
  5. [Cpp primer] Library string Type
  6. Tkinter Frame(框架)
  7. 概述XML
  8. MyEclipse显示 Install new software 在线安装插件选项
  9. DDD-EF-数据仓储
  10. 最流行的JavaScript代码规范