1. 程式人生 > >【轉】編寫高質量代碼改善C#程序的157個建議——建議138:事件和委托變量使用動詞或形容詞短語命名

【轉】編寫高質量代碼改善C#程序的157個建議——建議138:事件和委托變量使用動詞或形容詞短語命名

事件訪問器 特殊 tro 高質量 示例 change 依然 賦值 handle

建議138:事件和委托變量使用動詞或形容詞短語命名

事件和委托使用場景是調用某個方法,只不過這個方法由調用者賦值。這決定了對應的變量應該以動詞或形容詞短語命名。

關於事件和委托變量妥當的命名示例如下:

        public event RoutedEventHandler Click;
        public event SizeChangedEventHandler SizeChanged;

這兩個例子是WPF中Button類型,它們實際不是作為類型的字段出現的,而是作為事件訪問器出現的:

        public event RoutedEventHandler Click
        {
            add
            {
                
            }
            remove
            {
                
            }
        }
        
public event SizeChangedEventHandler SizeChanged { add { } remove { } }

熟悉屬性的讀者同時可以看到事件訪問器其實就是方法,所以這也從另一個方面印證了事件和委托變量應該由動詞或形容詞短語命名。

除了事件訪問器,我們也可以把委托和事件處理成字段,命名規則依然不變。

不妥的做法:

        public event SizeChangedEventHandler SizeChangedEventHandler 
        {
            add
            {

            }
            remove
            {

            }
        }

我們不建議這麽做。由於事件和委托的特殊性,這樣命名後,我們會分不清SizeChangedEventHandler到底是一個委托類型還是一個委托變量。

轉自:《編寫高質量代碼改善C#程序的157個建議》陸敏技

【轉】編寫高質量代碼改善C#程序的157個建議——建議138:事件和委托變量使用動詞或形容詞短語命名