Ted Faison は、イベントベースのソフトウェア設計に関するポッドキャストで、.NET、C++、および Java のイベント ステートメントの "sender" オブジェクトと "self" オブジェクトについて次のように言及しました。
private void Button_Click(object sender, RoutedEventArgs e)
たとえば、上記の例では、「送信者」は実際にはイベントを生成したオブジェクトではなくプロキシであるため、アプリケーションをそれほど緊密に結合したくないため、誤称です。
私は彼を間違って理解しましたか (デバッグすると、「送信者」は実際には元のオブジェクトのように見えます)。
それとも、これらの言語の一般的なイベント パターン (例: 一般的なクリック ハンドラー) は密接に結合されていますが、複合アプリケーションなどでは、より分離する必要があります。
彼はまた、たとえば EventArgs から継承を行うべきではないと述べました。これは、イベントごとに 1 つのクラスが爆発的に増加し、いくつかの変数しか転送されないためです。彼の意見では、多くの場合、たとえば文字列を送信するだけで済みます。彼は、この意見は Microsoft Patterns and Practices が示唆するものとは反対であると述べました。
これらの分野について何か考えはありますか?