あの 菊池 和彦 さんが「C# の Core に迫る」という題目でインタビューを受けています。
INTERVIEW vo6 - C#.NET の Core に迫る - 菊池 和彦
http://skillauction.jp/int5_topick.html
object 指向としてこれまで開発されてきた方でしたら、フィールドに対してアクセッサ (プロパティ) を作るとか、書き方について java だったらこうやる、とかいったスタイルや作法のようなものがあると思います。
それが C# では基本的に文法として存在するんです。
だからアクセッサの書き方にブレがあってインターオペラビリティが取れない、といったことはないんですよ。
C# は、プロパティを構文でサポートしており、コンパイラがチェックしてくれます。
一対であることを保証できるのは魅力だと思います。
イベントハンドラって本来その呼び出し元からいうと何も期待されていないということなんですよ。
呼び出し元としては、イベントハンドラってタイミングを外に出すというイベントの規約上呼んでいるだけで、外に出したから何かをしてもらいたいという考え方ではないんです。
デリゲートは Java から見ると、確かに美しくないですね。
しかし、こういう考え方をすれば納得できるかもしれませんね。