IDesign編碼標準規定「不要提供公共事件成員變量,而應使用事件訪問器。」C#標準:「不提供公共事件成員變量」的基本原理?
我明白有些情況下,事件訪問器是有用的(我認爲Control
使用字典只存儲分配給節省內存的事件)。但是,要求這個樣板代碼總是存在的是什麼?
編輯:明確
public event EventHandler EventName;
與
public event EventHandler EventName { add { ... } remove { ... } }
[見IDesign Coding Standard - 編碼標準 - 42]
理性可能與公共領域背後的理性相同。 – 2011-04-07 15:02:48
的確,你可以將一個公共領域變成一個自動屬性,但我認爲編譯器基本上是在幕後爲一個事件做了這件事。 – briantyler 2011-04-07 15:04:48
你的意思是「田野般的事件」;是的,它們在許多方面與自動道具非常相似,並且像汽車道具一樣,它們並不是唯一有效的實施。 – 2011-04-07 15:06:04