一千萬個為什麽

搜索

提升事件與直接方法調用差異

Raising an event, will call its event handler. eg http://msdn.microsoft.com/en-us/library/aa645739%28VS.71%29.aspx

使用事件機制和直接調用其他方法有什麽區別(例如,如果在方法A()中滿足條件,則調用B())?

消費和舉辦活動有什麽區別?

謝謝

最佳答案

區別在於:

Method call = "Do this specific thing"

Event raise = "If anyone is listening and cares, this thing just happened."

它是關註點分離和可重用性的核心。如果單擊它調用特定方法,則按鈕不是可重用組件。但如果它只是“宣布”它被點擊的程序,並且有興趣的各方負責訂閱它,它是無限可重用的。

如何實現(通過委托)的基礎技術實現是無關緊要的。

轉載註明原文: 提升事件與直接方法調用差異