クールなINotifyPropertyChangedの実装 (PostSharp編)

INotifyPropertyChanged の話が、.NET界隈で再び
盛んになっているので乗っかってみる。
とうか、以前書いたのを ziolog PostSharpでINotifyPropertyChaned
今の議論に合わせて実装しなおしてみた。
あと、速度も測ってみた。
プロジェクト (コンパイルにはPostSharpの導入が必要です)


まずは実行速度(10000回実行時の所要時間)
ノーマル: 2ms
PostSharp: 21ms
イケテル: 1860ms

通常実装よりは劣るけど、まずまず?

 

コードのシンプル具合

public class PostSharpEmp : IImpleNotifyPropertyChanged
{
[Notify]
public string Name{get;set;}
public event PropertyChangedEventHandler PropertyChanged;

public PropertyChangedEventHandler PropertyChangedHandler
{
get { return PropertyChanged; }
}
}

[Notfy]を自動プロパティに付け加えるだけでOKというエレガントさ!
ソース上に、拡張メソッドや属性用のクラスが3つほど出現するけど
すべて使いまわせるので、コード量が多くなるほどこのシンプルさが生きてくるはず。
(そのクラスに関してはソースを参考にしてください。大したコードじゃないです)

 

結論

PostSharpが最高にクールなのでみんな使おうぜ!

現在のレート 4.0 (6人)

  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Posted by: zio
Posted on: 2009/12/28 at 16:15
Actions: E-mail | Kick it! | DZone it! | del.icio.us
Post Information: Permalink | コメント (0) | Post RSSRSS comment feed

コメントを書く


 

biuquote
  • コメント
  • プレビュー
Loading